課程
/后端開發
/Java
/反射——Java高級開發必須懂的
老師,既然Foo是Class的實例對象,c1、c2也是Class的實例對象,但為什么Foo和c1、c2不相等呢?它們既然都是Class的實例對象,應該是同一類型,是可以比較的呀,但為什么不能比較呢
2017-05-23
源自:反射——Java高級開發必須懂的 1-1
正在回答
你拿類名去和一個對象比較?
五十陽 提問者
你可以通過instansof看看唄,肯定都是同一類型啊,只是實例化方式不同而已.
c1和c2指向同一地址肯定想等啊,你自己去看看父類object類的equals方法吧;要比較就要重寫hascode和equals方法;實例化得對象不是地址是什么?你自己直接輸出實例化的對象看看,能比較內容的都是重父類的equals方法的。還不懂就去看看api上面有具體的代碼,你自己就能看到它是怎么比較實現的。
因為每一個實例化對象都對應著不同的內存空間,所以說他們不相等;我們可以通過重寫hascode和tostring方法去實現同一類型的比較。
行,希望能看懂吧
我也是,多看幾遍吧.
舉報
反射,Java高級開發必須要懂的知識點,學好Java高級課程的基礎
3 回答是怎么理解嗎
2 回答這句不太理解,
5 回答關于這個demo不理解的地方
3 回答理解記憶問題
6 回答對類類型的理解?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-06-01
你拿類名去和一個對象比較?
2017-06-01
你可以通過instansof看看唄,肯定都是同一類型啊,只是實例化方式不同而已.
2017-06-01
c1和c2指向同一地址肯定想等啊,你自己去看看父類object類的equals方法吧;要比較就要重寫hascode和equals方法;實例化得對象不是地址是什么?你自己直接輸出實例化的對象看看,能比較內容的都是重父類的equals方法的。還不懂就去看看api上面有具體的代碼,你自己就能看到它是怎么比較實現的。
2017-06-01
因為每一個實例化對象都對應著不同的內存空間,所以說他們不相等;我們可以通過重寫hascode和tostring方法去實現同一類型的比較。
2017-05-23
行,希望能看懂吧
2017-05-23
我也是,多看幾遍吧.