• Il metodo equals viene invocato per confrontare il contenuto di due oggetti.
  • Per default, se i due sono “uguali”, il metodo restituisce true.

Tuttavia, la classe Object non conosce il contenuto delle sottoclassi, quindi è necessario sovrascrivere il metodo.

public class Punto{ 
	private int x, y, z;
 
	public boolean equals(Object o){
	if (o == null) return false;
	//chiedo se l'oggetto è stato costruito
	//con lo stesso costruttore
	if (getClass() != o.getClass()) return false;
	
	Punto p = (Punto)o;
	return x == p.x && y == p.y && z == p.z;
	}
}