Java 基础笔记 关于局部变量和类成员变量和父类成员变量重名时的调用问题

狂风中的少年 提交于 2020-01-16 03:40:43

用局部变量:直接写成员变量名

用本类的成员变量:this.成员变量名

用父类的成员变量:super.成员变量名

例子:↓

Father:父类中定义了 int num=10;

Child extends Father:子类继承父类,并且自有成员变量 int num=20;

public class Child extends Father{

    int num=20;

    public void method(){

        int num=30; //此时父类成员变量、子类成员变量、子类方法中的局部变量三者重名

        System.out.println(num);           //输出30,此时调用的是局部变量num

        System.out.println(this.num);    //输出20,此时调用的是子类成员变量num

        System.out.println(super.num); //输出10,此时调用的是父类成员变量num

    }

}

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!