inner class的向上轉型

2021-03-31 08:56:28 字數 527 閱讀 3565

inner class的向上轉型

當把乙個inner class物件向上轉型成為inte***ce時,我們得到的只是乙個reference。

inte***cedestination

inte***cecontents

classparcel3

}protectedclasspdestinationimplementsdestination

publicstring readlabel() 

}publicdestination to(string s)

publiccontents cont()

}publicclassexplicitstatic

}雖然我們不能在explicitstatic class無法呼叫pcontents class,但我們把乙個pcontents class物件向上轉型為contents,就可對之進行呼叫。

向下轉型,向上轉型

package cn.dali.code24 向上轉型 父類引用指向子類物件 格式 父類名稱 物件名 new 子類名稱 向下轉型 當我們使用父類引用指向子類物件的時候,我們想把父類物件轉為子類物件時,需要向下轉型 向下轉型就是乙個還原動作。格式 子類名稱 物件名 子類名稱 父類物件 注意 乙個父類有...

向上轉型向下轉型

在引用資料型別中,只有有繼承關係的型別才能進行型別轉換 型別轉換只是轉換看待物件的引用的型別,物件本身沒有也不可能參與轉換 父類引用可以自動指向子類物件,但只能訪問和呼叫到來自於父類的屬性和行為 子類的引用不能指向父類或其它子類物件,就算強轉也會導致執行失敗並丟擲classcastexception...

向上轉型的作用

上轉型物件不是父類建立的物件,而是子類物件的 簡化 狀態,它不關心子類新增的功能,只關心子類繼承和重寫的功能。當乙個類有很多子類時,並且這些子類都重寫了父類中的某個方法。當使用上轉型物件在呼叫這個方法時就可能具有多種形態。因為不同的子類在重寫父類的方法時可能產生不同的行為。也就是說,不同物件的上轉型...