Java是一種面向對象的編程語言,它的繼承機制是實現多態的重要基礎。繼承可以讓子類繼承父類的屬性和方法,并且在子類中可以重寫父類的方法達到多態的效果。
public class Animal{ public void eat(){ System.out.println("動物吃東西"); } } public class Dog extends Animal{ public void eat(){ System.out.println("狗吃骨頭"); } } public class Cat extends Animal{ public void eat(){ System.out.println("貓吃魚"); } } public class Test{ public static void main(String[] args){ Animal dog = new Dog(); Animal cat = new Cat(); dog.eat(); cat.eat(); } }
在上面的例子中,我們定義了一個Animal類和兩個子類Dog和Cat,它們都重寫了eat()方法并且有不同的實現。在Test類中,我們創建了Animal類型的dog和cat對象并且通過調用eat()方法實現了多態。這里的關鍵是使用父類引用指向子類對象,而不是通過子類引用調用子類方法。
另外,Java中還有一個Object類,所有的類都直接或者間接的繼承自Object類。因此,所有的類都可以使用Object類型的引用并且調用Object類中定義的方法。這就是Java中廣義上的多態。
public class Test{ public static void main(String[] args){ Object dog = new Dog(); Object cat = new Cat(); Object animal = new Animal(); dog.toString(); cat.toString(); animal.toString(); } }
這里我們使用Object類型的引用指向不同的類,并且調用了Object類中定義的toString()方法。這樣,我們就可以在不知道對象的具體類型的情況下,就可以對它們做出相應的操作。
總之,extends和多態是Java中非常重要的概念,它們可以幫助我們更好地理解面向對象編程的思想。在實際開發中,靈活使用繼承和多態可以大大提高代碼的可復用性和擴展性。
上一篇vue手寫技術站
下一篇html特效標題代碼