G way of implementing equals public boolean equals( final Object object ) { if( object instanceof this ) { // do check } return false; } The correct way to implement equals is as follows
public boolean equals(final Object object) { if (object != null && object.getClass() == this.getClass()) { // do check } return false; }
EqualsTester ensures that the equals() and hashCode() methods have been implemented correctly.
final Object a = new Foo(4); // original object final Object b = new Foo(4); // another object that has the same values as the original final Object c = new Foo(5); // another object with different values final Object d = new Foo(4) { }; // a subclass of Foo with the same values as the original new EqualsTester(a, b, c, d);
@version $Revision: 1.4 $
@author
Mike Bowler