Tag: hashcode

如果hashCode()返回一个对象的唯一ID

在我的Kotlin / Java项目中,我编写了一些继承抽象类BaseItem模型类: /** * All data model classes should implement this */ abstract class BaseItem { /** * A unique integer identifier used to represent the data item in the database. */ abstract val id: Int override fun equals(other: Any?) = (other is BaseItem) && id == other.id } 这些模型类将被用来表示来自数据库的数据。 在数据库中,有一个包含唯一整数标识符的ID列。 所以当我使用模型类,保证每个id属性都是唯一的。 读完这个hashCode()的Java规范之后: 只要在应用程序执行过程中多次调用同一对象, […]

kotlin结构平等检查超类型吗?

我更多地阅读了我的主题,我只是想确保我正确理解这一点。 似乎答案是,我们仍然需要覆盖类上的平等来定义结构相等性检查是什么? 换句话说,如果我们要检查customer1 == customer2那么我们首先必须通过实现equals来定义Customer的结构等同性,那么Kotlin将通过==运算符来使用我们的实现? 所以在这种情况下,如果Customer继承自Person并且我们也希望使用Person属性执行结构相等性检查,那么我们将在equals(Object object)方法中实现这一点?