写java程序应该注意的一些小细节
重写equals方法时需要注意的细节
注意equals方法的入参是Object,不要随意的改成其他类型,否则就变成了重载而不是重写,在重写方法时一定要加上@Override注解,它可以帮助你提前发现你的错误写法
1 |
|
重写equals时一定要重写hashCode方法,Object方法中的equals方法上的注释标注了这一点
1 | Note that it is generally necessary to override the {@code hashCode} |
如果这个方法被重写则必须重写hashCode方法,为了保证hashCode的规范,两个对象equals相等则其hashCode必须相等