我正在清理正在使用的系统的代码,清理了一些Sonar工具问题,并且遇到了以下消息:
覆盖此类中的“等于”方法
我做了一些研究,但没有任何答案能回答此注释的“原因”
我们正在使用带有EqualsBuilder
的父类,该类提供
EqualsBuilder.reflectionEquals
,因此更正只是声明通过传递父类的equals
方法来覆盖该方法
@Override
public boolean equals (Object o) {
return super.equals (o);
}
通过保证,我也将覆盖hashCode方法,但以相同的方式将职责传递给父类(与reflectHashCode HashCodeBuilder.reflectionHashCode
相同)
@Override
public int hashCode () {
return super.hashCode ();
}
但是仍然有我的问题,如果可以在继承中实现,为什么必须重写此方法?
提前谢谢