文章詳情頁(yè)
Effective java 學(xué)習(xí)筆記8
瀏覽:66日期:2024-06-19 16:21:52
內(nèi)容: 改寫equal()的同時(shí)記得要改寫hashcode可能有人要問,為啥?我只是改寫equal()不行么?我看到這里也是這么想得。這個(gè)是由于要遵從java.lang.object的規(guī)范第二條:兩個(gè)根據(jù)equal()相等的對(duì)象他們返回的hashcode值也必然相等。如果你改寫了equal()方法,令兩個(gè)實(shí)際不是一個(gè)對(duì)象的兩個(gè)實(shí)例在邏輯上相等了,但是hashcode卻是不等。所以要記得改寫hashcode。不改寫會(huì)帶來(lái)什么后果呢?當(dāng)然,比如你在用hashmap,hashtable之類的設(shè)計(jì)hashcode的類的時(shí)候,就會(huì)出麻煩了。至于如何改寫一個(gè)hashcode,這就有好有壞了,看各人的功底了。現(xiàn)在還有專門的科學(xué)家在研究?jī)?yōu)秀的hash算法。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標(biāo)簽:
Java
相關(guān)文章:
1. JAVA學(xué)習(xí)筆記:注釋、變量的聲明和定義操作實(shí)例分析2. PHP PDO 學(xué)習(xí)筆記3. Effective java學(xué)習(xí)筆記3:用私有構(gòu)造函數(shù)強(qiáng)化不可實(shí)例化能力4. vue學(xué)習(xí)筆記之Vue中css動(dòng)畫原理簡(jiǎn)單示例5. 《javascript設(shè)計(jì)模式》學(xué)習(xí)筆記一:Javascript面向?qū)ο蟪绦蛟O(shè)計(jì)對(duì)象成員的定義分析6. python OpenCV學(xué)習(xí)筆記7. 《javascript設(shè)計(jì)模式》學(xué)習(xí)筆記七:Javascript面向?qū)ο蟪绦蛟O(shè)計(jì)組合模式詳解8. asp知識(shí)整理筆記2(問答模式)9. python爬蟲學(xué)習(xí)筆記--BeautifulSoup4庫(kù)的使用詳解10. python 匿名函數(shù)與三元運(yùn)算學(xué)習(xí)筆記
排行榜
