課程
/后端開發(fā)
/Java
/Java入門第二季 升級版
Dog othr = (Dog) obj;這里為什么要強(qiáng)制轉(zhuǎn)換對象類型啊,上面不是已經(jīng)比較過兩個類對象了嗎?
2017-03-30
源自:Java入門第二季 升級版 9-9
正在回答
前面第一次比較是比較了兩個引用是否指向同一塊內(nèi)存區(qū)域,第二次比較是比較了代碼中是否是相同的類名,第三次比較是要比較對象的屬性值是否相同,因為傳進(jìn)來的obj是Object類型,為了能夠使用Dog類中的屬性,必須先將其強(qiáng)制轉(zhuǎn)換成Dog類型
Dog othr = (Dog) obj;就是把傳進(jìn)來的對象換成了Dog類型
前面判斷的對象是判斷兩個對象是否是一個對象,即這兩個引用是否指向同一塊內(nèi)存?,F(xiàn)在的強(qiáng)轉(zhuǎn)應(yīng)該是怕你傳入的對象的類型與該類型不是同一類型,因為類型不同就無法比較的屬性值了。
舉報
課程升級!以終為始告別枯燥,在開發(fā)和重構(gòu)中體會Java面向?qū)ο缶幊痰膴W妙
1 回答Dog other=(Dog)obj??
1 回答為什么要有這個Dog other=(Dog)obj;
1 回答Dog d = (Dog) obj是什么意思?
3 回答一定要 Dog other = (Dog)obj;
3 回答Dog other=(Dog) obj;這個語句為什么不用new呢
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-04-04
前面第一次比較是比較了兩個引用是否指向同一塊內(nèi)存區(qū)域,第二次比較是比較了代碼中是否是相同的類名,第三次比較是要比較對象的屬性值是否相同,因為傳進(jìn)來的obj是Object類型,為了能夠使用Dog類中的屬性,必須先將其強(qiáng)制轉(zhuǎn)換成Dog類型
2017-03-30
Dog othr = (Dog) obj;就是把傳進(jìn)來的對象換成了Dog類型
2017-03-30
前面判斷的對象是判斷兩個對象是否是一個對象,即這兩個引用是否指向同一塊內(nèi)存?,F(xiàn)在的強(qiáng)轉(zhuǎn)應(yīng)該是怕你傳入的對象的類型與該類型不是同一類型,因為類型不同就無法比較的屬性值了。