1. 程式人生 > 其它 >面向物件--繼承--繼承中成員變數的關係

面向物件--繼承--繼承中成員變數的關係

繼承中成員變數的關係

結論:(訪問變數遵循就近原則)

  • 在子類方法中訪問一個變數
  • 首先在子類區域性範圍找
  • 然後在子類成員範圍找
  • 最後在父類成員範圍找(肯定不能訪問到父類區域性範圍)
  • 如果還是沒有就報錯。(不考慮父親的父親…)

程式示例

/*
  繼承中的成員變數的關係
      當子類的成員變數與父類的成員變數名字一致的時候,在子類的方法中訪問變數
      會先在該方法內部查詢,如果找不到,就會去子類中的成員變數上去查詢,如果
                  還沒找到,就會去父類中查詢,如果父類中也沒有該名字的成員變數,就會報錯
*/
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();

  }
}