第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么轉(zhuǎn)換成dog可以,而不能轉(zhuǎn)換成cat


http://img1.sycdn.imooc.com//578234d700016efc06600379.jpg

dog和cat同為不同子類的對象


正在回答

2 回答

你要看代碼哦:

Dog dog=new Dog();

Animal animal=dog();

Dog dog2=(Dog)animal;

Cat cat=(Cat)animal;

代碼 分析:

Dog dog=new Dog(); //new了一個Dog()對象,并被dog指向;

Animal animal=dog; //創(chuàng)建變量animal 并賦值為dog;也就是說把dog的指向賦值給animal;

上面其實可以綜合成一句代碼:Animal animal = new Dog();其實就是父類實例化子類對象,即多態(tài);

Dog dog2=(Dog)animal;//創(chuàng)建dog2,為其賦值animal的指向,由于animal的類型是Animal,大(Animal)轉(zhuǎn)?。―og),所以需要強制類型轉(zhuǎn)換;

最后關(guān)鍵來了,創(chuàng)建了一個Cat類型的cat,然后為其賦值animal:

Cat cat=(Cat)animal;

注意:此時animal是Animal類的Dog對象,也就是說你拿動物類中的一只小狗這個對象,去把它變成貓類中的一只貓,你考慮過汪星人的想法么?汪星人不愿意啊,當(dāng)然是不行的。

那為什么之前一句可以呢?之前一句的意思是說,把動物類的一只小狗,放進狗類里然后改名叫dog2,那汪星人當(dāng)然愿意啊,多好啊,找到歸宿了。但是動物類中叫dog的這只小狗其實和狗類中叫dog2的小狗,是同一只大汪汪啊~~~

話說回來,這只小狗真可憐,被你們這幫程序員拎過來拎過去的,還要變成貓,哎~~~

木刻回答,必屬精答,純手打,望采納~~

12 回復(fù) 有任何疑惑可以回復(fù)我~
#1

3128 提問者

非常感謝!
2016-07-19 回復(fù) 有任何疑惑可以回復(fù)我~
#2

給自己加油

不錯,謝謝
2016-08-09 回復(fù) 有任何疑惑可以回復(fù)我~

狗當(dāng)然不能轉(zhuǎn)到貓了。。但可以把狗叫成動物。 類型只能為本類或父類。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

為什么轉(zhuǎn)換成dog可以,而不能轉(zhuǎn)換成cat

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號