Sobes.tech
Back to questions
Junior — Middle
77

Какие методы обычно реализуются в классах данных в вашем опыте?

Companies where asked
ИннотехИннотех
Ubic
kode.ru
ПромсвязьбанкПромсвязьбанк
МТС ЛинкМТС Линк
SelectySelecty
ПСБ
СБЕР АвтотехСБЕР Автотех
Т-БанкТ-Банк
СБЕР ЗвукСБЕР Звук
ВанТу Ворк

Answer from AI

sobes.tech AI

В классах данных (data classes) на Android обычно реализуются следующие методы:

  • equals() — для сравнения объектов по содержимому, а не по ссылке.
  • hashCode() — для корректной работы с хэш-структурами, например HashMap.
  • toString() — для удобного вывода содержимого объекта в виде строки.
  • copy() (если используется Kotlin) — для создания копии объекта с возможностью изменения некоторых полей.

Пример на Kotlin:

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, то обычно вручную переопределяют equals(), hashCode() и toString(), чтобы обеспечить корректное сравнение и удобный вывод.