我经常在不同的地方发现一个equals方法。它实际上做了什么?我们必须在每个班级都有这个重要吗?equals(Object obj)做什么?
public boolean equals(Object obj)
{
if (obj == this)
{
return true;
}
if (obj == null)
{
return false;
}
if (obj instanceof Contact)
{
Contact other = (Contact)obj;
return other.getFirstName().equals(getFirstName()) &&
other.getLastName().equals(getLastName()) &&
other.getHomePhone().equals(getHomePhone()) &&
other.getCellPhone().equals(getCellPhone());
}
else
{
return false;
}
}
我假设你已经看过了很清楚的文档:http://docs.oracle.com/javase/6/docs/api/java/lang/Object.html [向下滚动到equals()作为直接链接似乎不适用于commments]。 – NPE