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