爲什麼我們可以從一個超類垂下來,像這樣子類:在Java中向下轉換類與向下轉換接口的區別?
Object o = getStringObject();
String str = (String) o;
但然後用同樣的原理DOWN投的接口,一個子類如α-
InterfaceType anInterface;
anInterface = (InterfaceType) SubClassVar;
所以實施例1都很好,很花哨。我不明白的是,如果一個接口是一個實現它的類的超類型,那麼當我們向該接口下傳類時,如果接口的層次更高,我們怎麼會沒有ClassCastException?我在某處讀到,通過類和界面進行投射是有區別的,但當然他們不想解釋爲什麼,所以我仍然公開。謝謝,Stack!
我很困惑。你是說'SubClassVar'是一個'InterfaceType'?那麼演員陣容沒有用處。 –
@SotiriosDelimanolis SubClassVar是一個類實現InterfaceType – 3alto
@SotiriosDelimanolis也許我需要更多的信息,但如果你爲android開發,這是溝通模式,用於交談活動和片段之間。 – 3alto