Java中的多型簡介
阿新 • • 發佈:2018-12-11
多型(Polymorphic),即是事物存在的多種形態。
前提:
- 要有繼承關係;
- 要有方法重寫;
- 要有父類引用指向子類物件。
特點:
- 成員變數:編譯看左邊(父類),執行看左邊(父類);
- 成員方法:編譯看左邊(父類),執行看右邊(子類);
- 靜態方法:編譯看左邊(父類),執行看左邊(父類)。
其中靜態方法與類相關,不算是重寫,自己的類呼叫自己。
舉例: - 父類:
class Father{ int number = 10; public void Exercise() { System.out.println("登山"); } public static void Drink() { System.out.println("朗姆酒"); } }
- 子類:
class Son extends Father{
int number = 20;
public void Exercise() {
System.out.println("跑步");
}
public static void Drink() {
System.out.println("雞尾酒");
}
}
- 測試類:
Father f = new Son(); System.out.println(f.number); f.Exercise(); f.Drink(); Son s = new Son(); System.out.println(s.number); s.Exercise(); s.Drink();
- 執行結果:
10
跑步
朗姆酒
---------------------------------
20
跑步
雞尾酒
可以對照測試舉例感受以上多型特點。