Sobes.tech
Junior — Middle

Milyen módszerek szoktak általában megvalósulni az adat osztályokban a tapasztalatod szerint?

sobes.tech MI

Válasz az MI-től

Az Android adat osztályokban általában a következő metódusokat valósítják meg:

  • equals() — az objektumok tartalom szerinti összehasonlítására, nem hivatkozás szerint.
  • hashCode() — a helyes működéshez hash struktúrákkal, például HashMap-kel.
  • toString() — az objektum tartalmának kényelmes kiíratására sztringként.
  • copy() (ha Kotlin-t használnak) — az objektum másolatának létrehozására, bizonyos mezők módosításának lehetőségével.

Kotlin példával:

data class User(val id: Int, val name: String)

val user1 = User(1, "Alice")
val user2 = user1.copy(name = "Bob")
println(user1 == user2) // false
println(user1) // User(id=1, name=Alice)

Java-ban írt osztály esetén általában manuálisan felülírják az equals(), hashCode() és toString() metódusokat, hogy biztosítsák a helyes összehasonlítást és a kényelmes kiírást.