標籤:
1 /* 2 繼承的注意事項: 3 A:子類只能繼承父類所有非私人的成員(成員方法和成員變數) 4 B:子類不能繼承父類的構造方法,但是可以通過super(馬上講)關鍵字去訪問父類構造方法。 5 C:不要為了部分功能而去繼承 6 class A { 7 public void show1(){} 8 public void show2(){} 9 }10 11 class B {12 public void show2(){}13 public void show3(){}14 }15 16 //我們發現B類中出現了和A類一樣的show2()方法,所以,我們就用繼承來體現17 class B extends A {18 public void show3(){}19 }20 這樣其實不好,因為這樣你不但有了show2(),還多了show1()。21 有可能show1()不是你想要的。22 23 那麼,我們什麼時候考慮使用繼承呢?24 繼承其實體現的是一種關係:"is a"。25 Person26 Student27 Teacher//老師是人,學生也是人28 水果29 蘋果30 香蕉31 橘子//蘋果是水果,香蕉也是水果,橘子也是水果32 33 採用假設法。34 如果有兩個類A,B。只有他們符合A是B的一種,或者B是A的一種,就可以考慮使用繼承。35 */36 class Father {37 private int num = 10;38 public int num2 = 20;39 40 //私人方法,子類不能繼承41 private void method() {42 System.out.println(num);43 System.out.println(num2);44 }45 46 public void show() {47 System.out.println(num);48 System.out.println(num2);49 }50 }51 52 class Son extends Father {53 public void function() {54 //num可以在Father中訪問private55 //System.out.println(num); //子類不能繼承父類的私人成員變數56 System.out.println(num2);57 }58 }59 60 class ExtendsDemo3 {61 public static void main(String[] args) {62 // 建立對象63 Son s = new Son();64 //s.method(); //子類不能繼承父類的私人成員方法65 s.show();66 s.function();67 }68 }
Android(java)學習筆記118:類繼承的注意事項