Junior — Middle
Na čo slúži prepísaná metóda equals() v základnej triede Object v Jave?
sobes.tech AI
Odpoveď od AI
Metóda equals() v triede Object je určená na porovnávanie objektov na rovnosť. Predvolene porovnáva odkazy, teda kontroluje, či dve premenné ukazujú na ten istý objekt v pamäti.
Prepisovaním equals() môžete definovať logiku porovnávania objektov podľa obsahu, napríklad porovnaním polí objektov, aby boli považované za rovnaké, ak sa tieto polia zhodujú.
Príklad prepisovania 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;
}
Toto je dôležité pre správne fungovanie kolekcií ako sú HashSet alebo HashMap, ktoré používajú equals() na určenie jedinečnosti prvkov.