《Effective Java》读书笔记三:对于所有对象都通用的

2019-10-10  本文已影响0人  内卷星球

覆盖equals时请遵守通用约定

equals方法实现了等价关系

实现高质量equals方法的诀窍

  1. 使用==操作符检查“参数是否为这个对象的引用”
  2. 使用instanceof操作符检查“参数是否为正确的类型”
  3. 把参数转换成正确的类型
  4. 对于该类中的每个“关键”域,检查参数中的域是否与该对象中对应的域相匹配
  5. 当编写完成了equals,要确认三要素:对称性、传递性、一致性

覆盖equals时总是要覆盖hashCode

在每个覆盖了equals方法的类中,也必须覆盖hashCode方法

相等的对象必须具有相等的散列码

始终覆盖toString方法

谨慎地覆盖clone

考虑实现Comparable接口

上一篇 下一篇

猜你喜欢

热点阅读