課程
/后端開發
/Java
/Java入門第二季 升級版
引用類型轉換只能作用于父類與子類之間嗎?
2019-10-04
源自:Java入門第二季 升級版 10-3
正在回答
Dog dog = new Dog(); //申明了一個狗類的對象,叫“dog”
Animal animal = dog; //然后用動物類的引用 “animal”來接收這個dog,這種行為就是自動類型轉換。
Dog dog2 = (Dog) animal; //此刻,你又想把剛才的animal轉換回狗類,這中行為就是強制類型轉換。
//但是,你突然腦洞大開,你想把剛才的animal轉換成貓類
Cat cat = (Cat) animal;? //這樣做就不被允許了,因為animal這個引用,一開始接收的是一個狗類型的對象,你現在想把狗類型的對象轉換成貓類型,這就絕對不可以了。
所以,強制轉換的前提是,這個被轉換的對象它本身就是來源于這個類型。
父類可以引用子類,而子類不可以引用父類。
慕哥6547467
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
2 回答引用類型轉換的作用
2 回答引用類型轉換
1 回答只有父類和子類之間能進行類型轉換嗎,如果我設置了兩個沒有關系的類可不可以進行類型轉換
2 回答父類引用子類
2 回答父類引用和子類引用
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2020-04-14
Dog dog = new Dog(); //申明了一個狗類的對象,叫“dog”
Animal animal = dog; //然后用動物類的引用 “animal”來接收這個dog,這種行為就是自動類型轉換。
Dog dog2 = (Dog) animal; //此刻,你又想把剛才的animal轉換回狗類,這中行為就是強制類型轉換。
//但是,你突然腦洞大開,你想把剛才的animal轉換成貓類
Cat cat = (Cat) animal;? //這樣做就不被允許了,因為animal這個引用,一開始接收的是一個狗類型的對象,你現在想把狗類型的對象轉換成貓類型,這就絕對不可以了。
所以,強制轉換的前提是,這個被轉換的對象它本身就是來源于這個類型。
2019-10-06
父類可以引用子類,而子類不可以引用父類。