如果两个雇员对象相同,那么我想检查“getID()”方法是否返回相同的数字。我想我使用equals方法错了。我认为最后一行代码有问题:
我必须保留此代码:
public boolean equals( Object b )
{
if ( ! (b instanceof Employee) )
return false;
这是我可以编辑的内容:
(super.equals().getID()).equals(b.getID());
我收到此错误:
编译结果:错误: Employee.java:25:错误:找不到符号
感谢您的帮助。我很感激。
答案 0 :(得分:0)
如果getID()返回的“number”是原语
public boolean equals( Object b ){
if (this == b) return true;
if ( ! (b instanceof Employee) )
return false;
final other=(Employee)b;
return getID()==other.getID();
}
如果number是Object
public boolean equals( Object b ){
if (this == b) return true;
if ( ! (b instanceof Employee) )
return false;
final other=(Employee)b;
return getID().equals(other.getID());
}
如果覆盖equals,请确保也覆盖hashCode()。