面向对象--继承--继承中成员变量的关系

继承中成员变量的关系

结论:(访问变量遵循就近原则)

  • 在子类方法中访问一个变量
  • 首先在子类局部范围找
  • 然后在子类成员范围找
  • 最后在父类成员范围找(肯定不能访问到父类局部范围)
  • 如果还是没有就报错。(不考虑父亲的父亲…) 

程序示例

/*
    继承中的成员变量的关系
            当子类的成员变量与父类的成员变量名字一致的时候,在子类的方法中访问变量
            会先在该方法内部查找,如果找不到,就会去子类中的成员变量上去查找,如果
                  还没找到,就会去父类中查找,如果父类中也没有该名字的成员变量,就会报错
*/
class A{
    int q = 11;
}

class B extends A{
    int w = 22;
  
//    int q = 200;
  
    public void fun1(){
      
//    int q = 100;
      
        System.out.println(q);
        System.out.println(w);
    }

}


public class ExtendsDemo5 {
    public static void main(String[] args) {
        B b = new B();
//        System.out.println(b.q);
        b.fun1();

    }
}
posted @ 2021-12-07 16:26  赤兔胭脂小吕布  阅读(40)  评论(0编辑  收藏  举报