这是我们在类中实现equals方法的方式。
以区域为实例变量的A类(商店):
@Override
public boolean equals(Object otherObject) {
if (this == otherObject) {
return true;
}
if (otherObject == null || getClass() != otherObject.getClass()) {
return false;
}
Store otherStore = (Store) otherObject;
return area == otherStore.area;
}
B类(StoreToys)扩展了A类(Store)并且没有实例变量(处理继承)
我该怎么写这个类的equals方法?
答案 0 :(得分:0)
如果您未在StoreToys
中引入任何新字段,则可以使用instanceof
撰写支票,以验证otherObject
是否可以投放到Store
。< / p>
@Override
public boolean equals(Object otherObject) {
if (this == otherObject) {
return true;
}
if (!(otherObject instanceof Store)) {
return false;
}
Store otherStore = (Store) otherObject;
return area == otherStore.area;
}