Junior — Middle
Minden objektumnak Java-ban automatikusan jár egy egyedi hash-kód, vagy ez csak arra kötelezi a fejlesztőt, hogy saját maga valósítsa meg?
sobes.tech MI
Válasz az MI-től
Java-ban minden objektum alapértelmezés szerint egyedi hash-kódot kap a hashCode() metóduson keresztül, amely az Object osztályban van megvalósítva. A fejlesztő nem köteles ezt a metódust saját maga megvalósítani, ha az alapértelmezett megvalósítás megfelel.
Azonban, ha egy osztály felülírja az equals() metódust, akkor ajánlott a hashCode()-ot is felülírni, hogy helyes viselkedést biztosítson olyan kollekciókban, mint a HashMap vagy a HashSet.
Felülírás példája:
@Override
public int hashCode() {
return Objects.hash(field1, field2);
}