Junior — Middle
¿Para qué sirve el método sobrescrito equals() en la clase base Object en Java?
sobes.tech AI
Respuesta de la IA
El método equals() en la clase Object está diseñado para comparar objetos por igualdad. Por defecto, compara referencias, es decir, verifica si dos variables apuntan al mismo objeto en memoria.
Al sobrescribir equals(), se puede definir la lógica de comparación de objetos por contenido, por ejemplo, comparando los campos de los objetos para considerarlos iguales si estos coinciden.
Ejemplo de sobrescritura de equals():
@Override
public boolean equals(Object obj) {
if (this == obj) return true;
if (obj == null || getClass() != obj.getClass()) return false;
MyClass other = (MyClass) obj;
return field1.equals(other.field1) && field2 == other.field2;
}
Esto es importante para el correcto funcionamiento de colecciones como HashSet o HashMap, que utilizan equals() para determinar la unicidad de los elementos.