天天看點

4、多态

多态概念(一共三點滿足就行)

1、 繼承

2、程式運作時将子類對象指派給父類

3、通過父類去調用子類的方法

一、父類類型做方法的參數

<code>public class Person {</code>

<code></code>

<code>// //人喂動物</code>

<code>// public void feed(Dog dog) {</code>

<code>// dog.eat();</code>

<code>// }</code>

<code>//</code>

<code>// public void feed(Cat cat) {</code>

<code>// cat.eat();</code>

<code>public void feed(Animal animal) {</code>

<code>animal.eat();</code>

<code>}</code>

二、多态父類類型做傳回值  簡單工廠

4、多态

 缺點:破壞了開閉原則:對功能的擴充開放,對修改關閉(擴充功能的時候盡量不用動已經寫好的代碼)

 三、類型轉換

向上轉型:子類轉向父類

向下轉型:父類轉向子類(強制轉換,假轉)

instanceof關鍵字:判斷是不是類型是否相等,相等傳回true

equals方法重寫的解讀,要學會看懂什麼意思

4、多态