- 三個類,爺爺類,父親類,兒子類;父親類繼承爺爺類,兒子類繼承父親類
- 私有方法,構造方法不能被繼承
- 子類可以調用形參為父類的方法
1. 爺爺類
package JiCheng; public class Gf { // 成員變量 String name; // 構造方法 // 構造方法是構造當前類實例的特殊方法,不能被繼承 // 但是子類可以使用super關鍵字來調用父類的構造方法,用於初始化父類各項 Gf(){ } public void a1() { // 公有方法,可繼承 } private void b1() { // 私有方法,不可繼承,但可以想辦法調用它 } }
2. 父親類
package JiCheng; public class F extends Gf{ // 父親類繼承爺爺類 // 成員方法-公有 public void a2() { } // 公有方法 public void b2() { } }
3. 兒子類
package JiCheng; public class Z extends F{ // 兒子類繼承父親類 public void a3() { } }
4. 測試demo
package JiCheng; public class Extends_Demo01 { public static void main(String[] args) { Gf gf = new Gf(); // 爺爺類 F f = new F(); // 父親類 Z z = new Z(); // 兒子類 // f可以調用爺爺類公有的方法a1,但不能調用私有的方法b1 f.a1(); // z可以可以調用爺爺類的a1,父親類的a2,b2 z.a1(); z.a2(); z.b2(); // z繼承了爺爺類的成員變量 z.name = "zzg"; // 兒子類實例可以調用形參為爺爺類的方法 System.out.print(getName(z)); } // 形參為爺爺類,但由於繼承的原因,父親類和兒子類都可以調用 public static String getName(Gf g) { return g.name; } }