運行時多態性是面向對象程序設計代碼重用的一個最強大機制
一
舉例說明
//定義超類superA
class superA
{
int i =
void fun()
{
System
}
}
//定義superA的子類subB
class subB extends superA
{
int m =
void fun()
{
System
}
}
//定義superA的子類subC
class subC extends superA
{
int n =
void fun()
{
System
}
}
class Test
{
public static void main(String[] args)
{
superA a
subB b = new subB()
subC c = new subC()
a=b
a
a=c
a
}
}
運行結果為
This is subB
This is subC
上述代碼中subB和subC是超類superA的子類
所以
另外
不過
二
接口的靈活性就在於
舉例說明
//定義接口InterA
interface InterA
{
void fun()
}
//實現接口InterA的類B
class B implements InterA
{
public void fun()
{
System
}
}
//實現接口InterA的類C
class C implements InterA
{
public void fun()
{
System
}
}
class Test
{
public static void main(String[] args)
{
InterA a
a= new B()
a
a = new C()
a
}
}
輸出結果為
This is B
This is C
上例中類B和類C是實現接口InterA的兩個類
需要注意的一點是
結束語
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26085.html