課程
/后端開發
/Java
/Java入門第二季 升級版
重寫equals方法里 ? 比較屬性值是否相等之前一定要 ?Dog other = (Dog)obj;嗎?不能直接和obj的屬性值比較嗎
2017-07-18
源自:Java入門第二季 升級版 9-9
正在回答
如果不轉換成dog對象是沒法比較屬性值的
湖水換成淚 提問者
前面第一次比較是比較了兩個引用是否指向同一塊內存區域,第二次比較是比較了代碼中是否是相同的類名,第三次比較是要比較對象的屬性值是否相同,因為傳進來的obj是Object類型,為了能夠使用Dog類中的屬性,必須先將其強制轉換成Dog類型
慕圣8425527
對象類型不相同不能直接比較
舉報
課程升級!以終為始告別枯燥,在開發和重構中體會Java面向對象編程的奧妙
1 回答Dog other=(Dog)obj??
1 回答為什么要有這個Dog other=(Dog)obj;
3 回答Dog other=(Dog) obj這塊我還是不懂
4 回答Dog other = (Dog) obj;類型都一樣了,為什么還要轉換?????
2 回答eclipse生成的equals方法中Dog other = (Dog)obj疑問;
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-07-18
如果不轉換成dog對象是沒法比較屬性值的
2017-08-25
前面第一次比較是比較了兩個引用是否指向同一塊內存區域,第二次比較是比較了代碼中是否是相同的類名,第三次比較是要比較對象的屬性值是否相同,因為傳進來的obj是Object類型,為了能夠使用Dog類中的屬性,必須先將其強制轉換成Dog類型
2017-07-18
對象類型不相同不能直接比較