在Java中,一個父類可以有多個子類,這些子類繼承了父類的屬性和方法。在代碼中,我們可以使用父類引用和子類引用。
使用父類引用時,可以引用父類對象和其子類對象。例如:
class Animal { public void move() { System.out.println("動物可以移動"); } } class Dog extends Animal { public void move() { System.out.println("狗可以跑和走"); } public void bark() { System.out.println("狗可以叫"); } } public class Test { public static void main(String args[]) { Animal animal = new Animal(); // 父類對象 Animal dog = new Dog(); // 子類對象 animal.move(); // 輸出結果:動物可以移動 dog.move(); // 輸出結果:狗可以跑和走 // dog.bark();編譯錯誤!父類引用不能調用子類特有的方法。 } }
使用子類引用時,只能引用子類對象。例如:
class Car { public void drive() { System.out.println("汽車可以行駛"); } } class BMW extends Car { public void drive() { System.out.println("BMW可以高速行駛"); } public void autoPark() { System.out.println("BMW可以自動泊車"); } } public class Test { public static void main(String args[]) { BMW bmw = new BMW(); bmw.drive(); // 輸出結果:BMW可以高速行駛 bmw.autoPark(); // 輸出結果:BMW可以自動泊車 Car car = bmw; // 子類對象可以賦值給父類引用 car.drive(); // 輸出結果:BMW可以高速行駛 // car.autoPark();編譯錯誤!父類引用不能調用子類特有的方法。 } }
總之,在編寫Java程序時,父類引用和子類引用都有其特定的使用場景和限制。需要根據實際需求靈活運用。
上一篇gis php