1. 程式人生 > >Java中的多型簡介

Java中的多型簡介

多型(Polymorphic),即是事物存在的多種形態。

前提:

  1. 要有繼承關係;
  2. 要有方法重寫;
  3. 要有父類引用指向子類物件。

特點:

  • 成員變數:編譯看左邊(父類),執行看左邊(父類);
  • 成員方法:編譯看左邊(父類),執行看右邊(子類);
  • 靜態方法:編譯看左邊(父類),執行看左邊(父類)。
    其中靜態方法與類相關,不算是重寫,自己的類呼叫自己。
    舉例:
  • 父類:
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
跑步
雞尾酒

可以對照測試舉例感受以上多型特點。