Junior — Middle
За какво служи преопределеният метод equals() в базовия клас Object в Java?
sobes.tech AI
Отговор от AI
Методът equals() в класа Object е предназначен за сравняване на обекти за равенство. По подразбиране той сравнява референции, тоест проверява дали две променливи сочат към един и същи обект в паметта.
Презаписвайки equals(), можете да определите логиката за сравняване на обекти по съдържание, например, сравнявайки полетата на обектите, за да ги считате за равни, ако тези полета съвпадат.
Пример за презаписване на 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;
}
Това е важно за правилната работа на колекции като HashSet или HashMap, които използват equals() за определяне на уникалността на елементите.