Sobes.tech
Junior — Middle

Millised funktsioonid või meetodid andmeklassis saavad automaatselt üle kirjutada põhimõõpetused?

sobes.tech AI

Vastus AI-lt

Kotlinis, klassi deklareerides võtmesõnaga data, üle kirjutatakse automaatselt järgmised meetodid:

  • equals() — objektide võrdlemine nende omaduste väärtuste järgi.
  • hashCode() — õige toimimise jaoks hash-kogumitega.
  • toString() — mugav objekti string-kujundus.
  • copy() — objekti koopiate loomine võimalusega muuta mõningaid omadusi.
  • componentN() funktsioonid — objekti destruktureerimiseks omaduste järgi.

Näide:

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

val user1 = User("Alice", 30)
val user2 = user1.copy(age = 31)
println(user1) // User(name=Alice, age=30)
println(user1 == user2) // false
val (name, age) = user1
println(name) // Alice