Java三大特點之多型
阿新 • • 發佈:2018-12-10
多型方法呼叫允許一種型別表現出與其他相似型別之間的區別,只要他們都是從同一個基類匯出而來的,作用是消除型別之間的耦合關係。 下面看一段程式碼
class Animal3{
public void voice() {
System.out.println("一般動物叫聲");
}
public void eat() {
System.out.println("eating...");
}
}
class Bird3 extends Animal3{
public void voice() {
System.out .println("zhazhazha");
}
public void run() {
System.out.println("flying");
}
}
public class Duotai {
public static void main(String[] args) {
Animal3 a = new Bird3(); //upcast(向上轉型)
a.eat();
a.voice();
Bird3 a1 = (Bird3)a; //強制轉型
a1.run();
}
}
我們可以看到,如果物件a想要呼叫Bird3類中的run()方法,我們必須將其強制轉型成Bird3類的物件,而重寫父類的方法仍可以直接呼叫。 多型必須要有繼承。 多類引用指向子類物件