Junior — Middle
La ce serve metoda suprascrisă equals() în clasa de bază Object în Java?
sobes.tech AI
Răspuns de la AI
Metoda equals() din clasa Object este destinată comparării obiectelor pentru egalitate. În mod implicit, compară referințele, adică verifică dacă două variabile indică același obiect în memorie.
Prin suprascrierea equals(), se poate defini logica de comparare a obiectelor după conținut, de exemplu, comparând câmpurile obiectelor pentru a le considera egale dacă aceste câmpuri coincid.
Exemplu de suprascriere a 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;
}
Acest lucru este important pentru funcționarea corectă a colecțiilor precum HashSet sau HashMap, care utilizează equals() pentru a determina unicitatea elementelor.