1. 程式人生 > >面向對象多態

面向對象多態

子類重寫 介紹 instance 出現 沒有 程序 使用 形式 兩種

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經常和強制類型轉換結合使用。



面向對象多態