Back to questions
Т-Банк
Junior — Middle
73
Объясните концепцию data class в Kotlin и чем она отличается от обычных классов.
Companies where asked
Answer from AI
sobes.tech AI
Data class в Kotlin — это специальный класс, предназначенный для хранения данных. При объявлении класса с ключевым словом data компилятор автоматически генерирует для него полезные методы: equals(), hashCode(), toString(), а также функции copy() и компоненты для деструктуризации.
Отличия от обычных классов:
- Автоматическая генерация методов для сравнения и копирования.
- Упрощённый синтаксис для создания классов, которые в основном содержат данные.
Пример data class:
data class User(val name: String, val age: Int)
fun main() {
val user1 = User("Иван", 30)
val user2 = user1.copy(age = 31)
println(user1) // User(name=Иван, age=30)
println(user2) // User(name=Иван, age=31)
}
Таким образом, data class удобен для моделей данных, где важна простота и корректное сравнение объектов.