【发布时间】:2011-09-25 00:02:11
【问题描述】:
我的“相等”方法出现以下 Findbugs 错误,
这个类定义了一个equals方法 覆盖 a 中的 equals 方法 超类。两个等于方法 方法在 判断两个物体是否 是平等的。这充满了危险, 因为重要的是等于 方法是对称的(换句话说, a.equals(b) == b.equals(a))。如果 B 是一个 A 的子类型,以及 A 的 equals 方法 检查参数是否为 instanceof A 和 B 的 equals 方法 检查参数是否为 instanceof B,很可能是 由下式定义的等价关系 这些方法不是对称的。
由于安全违规,我无法在此处发布代码。请告诉我是什么错误?
【问题讨论】:
-
如果不贴一些有代表性的代码,就很难看出错误了……
-
他只需要对 findbugs“错误”的解释。在我看来,不需要代码。
标签: java