面向對象多態
1.多態:
定義:同一父類的不同子類,在處理同一行為時,有不同的表現。就是
多態。
學習多態的原因?
提高代碼的可擴展性和可維護性。
2.實現多態的步驟:
A.父子類繼承
B.子類重寫父類方法:
C.調用時,聲明父類 new 子類。
3."聲明父類 new 子類" 介紹:
1.創建父類引用,指向子類對象。
A.該對象,可以直接使用父類的所有屬性和【方法】;但是子類特有屬
性和方法,卻無可奈何?
B.如果子類沒有重寫父類的方法,那麽該對象調用的是父類的方法。
C.如果子類重寫了父類中的方法,那麽該對象調用的是子類重寫後的
方法。
4.多態的表現形式分為兩種:
A。父類做參數:
B。父類做返回值類型:
5.類型轉換:
解決 :聲明父類new 子類 ,創建出來的對象,不能調用子類特有屬性
和方法的問題。
A。向上轉型:聲明父類new 子類
1.調用父類裏的屬性和方法
2.調用子類重寫的方法
3.不能調子類特有的屬性和方法
B。向下轉型: 子類類型 對象名1=(子類類型) 對象名2。
---說明:對象名2是通過“聲明父類new子類”得到的
對象。
---存在隱患,如果子類類型轉換錯誤,程序直接報錯。
---轉換成功後,就可以調用子類特有的方法和屬性了。
6.instanceof 關系運行符。
學習原因? 避免類型轉換異常,從而提高代碼的健壯性。
註意:1.使用interfaceof運算符時,對象的類型必須和interfaceof的第二
個參數所指定的類或者接口在繼承屬上有上下級關系,否則會出現編譯錯誤。
2.interfaceof經常和強制類型轉換結合使用。
面向對象多態