在Java中,多態分為兩種形式:重載多態和重寫多態。
重載多態,也稱編譯時多態,是指一個類中多個方法的方法名相同,但其參數列表不同,通過其調用時所傳遞的參數類型來確定具體的方法調用。以下是一個例子:
public class OverloadDemo { public void print(int i) { System.out.println("int value: " + i); } public void print(String s) { System.out.println("string value: " + s); } public static void main(String[] args) { OverloadDemo demo = new OverloadDemo(); demo.print(15); demo.print("Hello, World!"); } }
在上面的例子中,方法print被重載了,分別有一個接收int類型參數的方法和一個接收String類型參數的方法。在調用方法print時,通過傳遞的參數類型來決定具體調用哪個方法。
重寫多態,也稱運行時多態,是指子類重寫了父類中的某個方法,當通過父類類型的變量來引用子類對象時,根據具體子類類型來確定方法調用,這就實現了動態綁定。以下是一個例子:
public class Animal { public void makeSound() { System.out.println("Generic animal sound"); } } public class Dog extends Animal { @Override public void makeSound() { System.out.println("Woof woof"); } } public static void main(String[] args) { Animal animal = new Dog(); animal.makeSound(); }
在上面的例子中,Dog類繼承了Animal類,并重寫了其中的方法makeSound。在main方法中,通過父類類型的變量animal來引用子類對象Dog,并調用makeSound方法,此時調用的就是子類Dog中重寫的makeSound方法。
通過使用Java的重載和重寫實現多態,可以實現更加靈活和可擴展的程序設計。
上一篇css換行是哪個單詞
下一篇php 導出身份證號