多態

一種行爲的多種體現形態
父類引用=子類對象
父類 a=new 子類()
通過父類調用子類方法

類/抽象類 的多態

 一個父類作爲方法的形參,-------方法內調用子類或本類方法,
  可以傳入該類的對象或子類的對象  
一個父類作爲方法的返回類型,可以返回該類的對象,子類的對象
缺點:不能調用子類特有的行爲,只能調用子父類共有的行爲
解決:向下轉型 即可以調用子類的特有的行爲
  Anmial an=new Cat();----向上轉型
  Cat c=(Anmial)an;-------向下轉型

多態的執行

 編譯看左邊,運行看右邊
Instanceof 
A instanceof B---------A是B類的對象或B類子類的對象
判斷對象an指向的 是否是Cat類
Anmial an;
If(an instanceof Cat){
Cat c=(Cat)an;
c.cat類特有的方法
 }

接口的多態

接口 = 接口實現類對象
接口作爲方法的形參(有這一特性的類)------方法內調用接口的方法
可以傳入該接口的實現類對象
接口作爲方法的返回類型  返回接口實現類對象
發佈了27 篇原創文章 · 獲贊 2 · 訪問量 3743
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章