Работал ли с data class в Kotlin

«Работал ли с data class в Kotlin» — вопрос из категории Kotlin, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, работал. Data class в Kotlin — это удобный способ создания классов, предназначенных для хранения данных. Автоматически генерирует equals(), hashCode(), toString(), copy() и методы для деструктуризации.

Пример:

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

// Использование
val user = User("Alex", 25)
val (name, age) = user // деструктуризация
val copy = user.copy(age = 26) // копирование с изменением поля

Особенности:

  • Должен иметь хотя бы один параметр в конструкторе.
  • Не может быть abstract, open, sealed или inner.
  • Можно переопределять сгенерированные методы, если нужно изменить логику.

Идеально подходит для моделей данных, DTO и состояний.