我正在处理现有项目。我有以下用户类的 equals 方法。当我将相等与 equals 进行比较时,我得到了错误
if (getClass() != other.getClass()) {
return false;
}
完整equals
代码:
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null) {
return false;
}
User other = (User) obj;
if (getClass() != other.getClass()) {
return false;
}
if (this.getUserId() == null) {
if (other.getUserId() != null) {
return false;
}
} else if (!this.getUserId().equals(other.getUserId())) {
return false;
}
return true;
}
我需要在这里检查班级类型吗?如果是,为什么我的用户类别不同?为什么我不能像下面那样检查类类型?
if (!(obj instanceof User)){
return false;
}