多型成員的訪問特點
阿新 • • 發佈:2019-01-09
多型成員的訪問特點
/* 多型:同一個物件(事物),在不同時刻體現出來的不同狀態。 舉例: 貓是貓,貓是動物。 水(液體,固體,氣態)。 多型的前提: A:要有繼承關係。 B:要有方法重寫。 其實沒有也是可以的,但是如果沒有這個就沒有意義。 動物 d = new 貓(); d.show(); 動物 d = new 狗(); d.show(); C:要有父類引用指向子類物件。 父 f = new 子(); 用程式碼體現一下多型。 多型中的成員訪問特點: A:成員變數 編譯看左邊,執行看左邊。 B:構造方法 建立子類物件的時候,訪問父類的構造方法,對父類的資料進行初始化。 C:成員方法 編譯看左邊,執行看右邊。 D:靜態方法 編譯看左邊,執行看左邊。 (靜態和類相關,算不上重寫,所以,訪問還是左邊的) 由於成員方法存在方法重寫,所以它執行看右邊。 */ class Fu { public int num = 100; public void show() { System.out.println("show Fu"); } public static void function() { System.out.println("function Fu"); } } class Zi extends Fu { public int num = 1000; public int num2 = 200; public void show() { System.out.println("show Zi"); } public void method() { System.out.println("method zi"); } public static void function() { System.out.println("function Zi"); } } class DuoTaiDemo { public static void main(String[] args) { //要有父類引用指向子類物件。 //父 f = new 子(); Fu f = new Zi(); System.out.println(f.num); //找不到符號 //System.out.println(f.num2); f.show(); //找不到符號 //f.method(); f.function(); } }