Junior — Middle
Hozzáfér-e az equals metódus a data classon belüli mezőkhöz?
sobes.tech MI
Válasz az MI-től
Igen, a Kotlin adat osztályban lévő equals metódus hozzáfér minden, az osztályon belül deklarált mezőhöz, beleértve a privátakat is. Fordításkor a Kotlin automatikusan generál egy equals megvalósítást, amely összehasonlítja az összes tulajdonságot, amit az adat osztály elsődleges konstruktorában deklaráltak.
Például:
data class User(val id: Int, val name: String)
A generált equals metódus összehasonlítja a User két objektumának id és name értékét.
Így az equals figyelembe veszi az összes, az adat osztályban deklarált tulajdonságot, függetlenül azok hozzáférési módosítóitól.