一、多型的概述
多型:物件在不同時刻表現出來的不同狀態
多型是針對引用型別:編譯期間的狀態和執行期間的狀態。
前提條件:
a、要有繼承關係
b、要有方法重寫
c、要有父類引用指向子類物件
class fu
class zi extends fu
class duotai
這就是多型編譯期間父型別,執行期間是子型別。
二、多型的成員特點
成員變數是父親的,成員方法是兒子的。方法有重寫,而變數沒有
a:成員變數(編譯看左邊,執行看左邊)
b:成員方法(編譯看左邊,執行看右邊)
三、多型的弊端和解決方案
多型的弊端:
父類引用不能使用子類特有功能
解決方法:
基本型別轉換:隱式轉換(從小到大),顯示轉換(從大到小)
引用型別轉換:向上轉型(從小到大),向下轉型(從大到小)
class fu
class zi extends fu
public void method()
class duotai
只有在執行是才回去new物件,開闢空間。執行是不建立物件。
四、多型的好處
為了提高**的擴充套件性和可維護性。工具類中的方法用父親接收,增加子類不需要修改工具類。
繼承的弊端是強耦合:父類有的,子類也會有
java筆記,多型
多型可以用現象與本質來理解。栗子 偽 class people void drink class my void drink void special people ykh new my 當用這樣的例項化方式時 people ykh new my 可以這樣理解 用people這個現象來裝飾my這個本...
java學習筆記之 多型
父類引用指向子類物件時,注意以下幾點 1 例項化乙個沒有名字的子類物件,然後向上轉型為父類的父類的引用,先去呼叫子類重寫的方法,子類沒有重寫就再去呼叫父類的方法。2 只能呼叫父類中定義過的方法和變數 父類中沒有定義過呼叫的時候要報錯 3 專屬於子類的成員變數,在子類方法中被訪問時,這時候通過父類引用...
JAVA學習筆記之多型
型別轉換分為自動型別轉換和強制型別轉換 1.自動型別轉換 向上型別轉換 父類 小型別 子類 大型別 不存在風險 animal animal new animal dog dog new dog animal dog 自動型別轉換,不存在風險2.強制型別轉換 向下型別轉換 子類 大型別 父類 小型別 ...