課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
視頻中老師說Animal animal=dog是父類引用指向子類對象這不是和Animal animal=new Dog()解釋一樣嗎?一種解釋怎么會有兩種表達方式?感覺很奇怪。
2018-10-18
源自:Java入門第二季 升級版 10-2
正在回答
第一種寫法是定義一個Dog類的對象,就是你說的父類引用指向子類對象,思想是多態(tài)。
第二種寫法是定義Animal類的對象,并且把dog賦值給它。這里有一個隱藏的類型轉(zhuǎn)換??梢苑纸獬蓛删湓拰崿F(xiàn),
Animal animal = new Animal();
animal = dog;
Rhybood 提問者
學(xué)霸985 回復(fù) Rhybood 提問者
Animal animal = dog更傾向于賦值;
可以在類里寫一個變量,和對應(yīng)的get、set方法。然后先將dog中的變量賦值,再把dog賦值給animal,此時animal中的變量就是dog賦值過的值。
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
3 回答Animal animal=new Dog()和Animal animal=dog有區(qū)別嗎?
2 回答Dog dog2= (Dog )animal;和Animal animal=dog;的含義
4 回答Animal animal = dog;的含義
6 回答Animal obj2 = new Dog();
3 回答關(guān)于Dog dog=new Dog與 Animal dog=new Dog
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2018-10-19
第一種寫法是定義一個Dog類的對象,就是你說的父類引用指向子類對象,思想是多態(tài)。
第二種寫法是定義Animal類的對象,并且把dog賦值給它。這里有一個隱藏的類型轉(zhuǎn)換??梢苑纸獬蓛删湓拰崿F(xiàn),
Animal animal = new Animal();
animal = dog;
2018-10-18
Animal animal = dog更傾向于賦值;
可以在類里寫一個變量,和對應(yīng)的get、set方法。然后先將dog中的變量賦值,再把dog賦值給animal,此時animal中的變量就是dog賦值過的值。