当我们可以直接使用对象类方法时,为什么集合接口具有equals()和hashcode()



当我们可以直接使用Object类方法时,Collection接口为什么具有equals()hashCode() ...为什么?

您正在考虑编译条款。Java SE是一个面向对象的库;方法定义为A 合同的一部分,不仅要声明其他代码WEN汇编的方法。

collection.equals优化对象的合同。等于其他规定:

Object.equals方法的一般合同指出,等于对称的方法必须是对称的(换句话说,a.equals(b)时,仅在b.equals(a)时才在CC_6时)。列表的List.equalsSet.equals状态的合同仅等于其他列表,并设置为其他集合。因此,将ListSet接口的定制equals方法用于将此集合与任何列表进行比较或设置时。

最新更新