您的位置:首页技术文章
文章详情页

Effective java 学习笔记8

浏览:8日期:2024-06-19 16:21:52
内容: 改写equal()的同时记得要改写hashcode可能有人要问,为啥?我只是改写equal()不行么?我看到这里也是这么想得。这个是由于要遵从java.lang.object的规范第二条:两个根据equal()相等的对象他们返回的hashcode值也必然相等。如果你改写了equal()方法,令两个实际不是一个对象的两个实例在逻辑上相等了,但是hashcode却是不等。所以要记得改写hashcode。不改写会带来什么后果呢?当然,比如你在用hashmap,hashtable之类的设计hashcode的类的时候,就会出麻烦了。至于如何改写一个hashcode,这就有好有坏了,看各人的功底了。现在还有专门的科学家在研究优秀的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
标签: Java
相关文章: