Sobes.tech
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.