Junior — Middle
Kas iga objekti Java-s automaatselt omistab unikaalse hash-koodi, või see ainult kohustab arendajat selle ise rakendama?
sobes.tech AI
Vastus AI-lt
Java-s igalele objektile vaikimisi antakse unika hash-kood meetodi hashCode(), mis on rakendatud klassis Object. Arendajal ei ole kohustust seda meetodit ise rakendada, kui standardne rakendus sobib.
Kuid, kui klass ülekirjutab meetodi equals(), soovitatakse ka hashCode() üle kirjutada, et tagada korrektne käitumine kogumites nagu HashMap või HashSet.
Ülekirjutamise näide:
@Override
public int hashCode() {
return Objects.hash(field1, field2);
}