如题,最近看java基础时,看到了关于继承的重写和重载部分,方法的重载可以实现代码的多态,但是重写我就不是很理解为什么要这么写,希望有心人帮忙解释下。
小白这里先谢过了。
阿神2017-04-18 10:18:05
重寫的話,也能實現程式碼的多樣性。
子類別繼承了父類別之後,呼叫父類別的方法,就不需要重複寫,節省程式碼量。
如果使用條件變更,父類別的方法不能滿足使用需求,那麼你就需要重寫方法了,把父類別的方法覆蓋掉。
重寫可以跟java的許多模式配合。
怪我咯2017-04-18 10:18:05
你理解錯了,重寫才是實現多態的關鍵,重載只是增加幾個參數,重用方法名稱而已。至於為什麼重寫是實現多態的關鍵,是因為物件導向鼓勵面向介面編程,或是面向抽象編程。例如:
一個水果的父類,有printName方法:
public class Fruit {
public void printName() {
System.out.println("Fruit");
}
}
蘋果和橘子都可以是Fruit的子類,但是你實作過程中可以重寫printName方法,從而實現不同的名字輸出。