当前位置: 代码迷 >> J2SE >> 刚才发现了一件颠覆小弟我三观的有关问题
  详细解决方案

刚才发现了一件颠覆小弟我三观的有关问题

热度:142   发布时间:2016-04-23 20:21:40.0
刚才发现了一件颠覆我三观的问题
有1个class的2个instance
superclass就是object
没有重写hashCode和equals方法
确认了编译后代码没有重写hashCode和equals方法
用==测试这两个对象为false,equals测试也为false
但是它们的hashCode竟然一样
问题是JDK上写着
 then calling the {@code hashCode} method on each of the
  two objects must produce distinct integer results


由于是系统运行中的突发状况,追查起来比较费劲
暂时先搁置,以后再追查
------解决方案--------------------
不会吧?这种情况hashCode怎么可能一样?
------解决方案--------------------
怎么可能- -!
------解决方案--------------------
hashCode 也不保证一定不同
------解决方案--------------------
这种可能性也不是没有啊。hashcode本来就是有可能一样的啊。
------解决方案--------------------
这种情况很正常,equals返回结果为false,没有要求hashCode也一定相等。源码注释说明的很明确了。
------解决方案--------------------
我是来学习的
  相关解决方案