Java是一門面向對象的編程語言,支持重寫和重載兩種方法。
重寫(Override)是指在子類中重新定義父類中已有的方法,使其實現與父類不同的行為。重寫需要滿足以下條件:
1. 方法名稱、參數個數及參數類型必須與父類相同; 2. 返回類型必須與父類相同或為其子類; 3. 訪問修飾符不能縮小,可以擴大; 4. 父類方法不能為final或private,否則無法重寫。
例如:
class Animal { public void eat() { System.out.println("Animal is eating"); } } class Dog extends Animal { public void eat() { System.out.println("Dog is eating"); } } public class Main { public static void main(String[] args) { Animal animal = new Animal(); animal.eat(); // 輸出Animal is eating Dog dog = new Dog(); dog.eat(); // 輸出Dog is eating } }
重載(Overload)是指在同一個類中定義多個方法,它們具有相同的名稱但參數不同。重載需要滿足以下條件:
1. 方法名稱相同; 2. 參數個數或類型必須不同; 3. 返回類型可以不同; 4. 不能僅通過返回類型的不同來重載方法。
例如:
class Calculator { public int add(int x, int y) { return x + y; } public int add(int x, int y, int z) { return x + y + z; } } public class Main { public static void main(String[] args) { Calculator calculator = new Calculator(); System.out.println(calculator.add(1, 2)); // 輸出3 System.out.println(calculator.add(1, 2, 3)); // 輸出6 } }
可以看出,Java的重寫和重載是非常靈活和強大的方法,可以滿足各種不同的需求。在實際編程中,需要根據具體情況進行選擇。
上一篇php css代碼