.equals
メソッドをオーバーライドする理由について、いくつかの混乱があります。
例えば:
Test test1 = new Test(3);
Test test2 = new Test(3);
//The if comparison does the same thing that the overridden `.equals()` method does.
if(test1.equals(test2)){
System.out.println("test1 and test2 are true in .equals()");
}
// Override .equals method.
public boolean equals(Object object) {
if(object instanceof Test && ((Test)object).getValue() == this.t) {
return true;
} else {
return false;
}
}
.equals()
メソッドをオーバーライドする必要がある理由がわかりません。