Junior — Middle
Fiecărui obiect în Java i se atribuie automat un cod hash unic, sau acest lucru doar obligă dezvoltatorul să îl implementeze singur?
sobes.tech AI
Răspuns de la AI
În Java, fiecărui obiect i se atribuie implicit un cod hash unic prin metoda hashCode(), care este implementată în clasa Object. Dezvoltatorul nu este obligat să implementeze această metodă singur dacă implementarea standard este potrivită.
Cu toate acestea, dacă o clasă suprascrie metoda equals(), se recomandă de asemenea să suprascrie hashCode() pentru a asigura comportamentul corect în colecții precum HashMap sau HashSet.
Exemplu de suprascriere:
@Override
public int hashCode() {
return Objects.hash(field1, field2);
}