Назад к вопросам
Junior — Middle
71
Какое отличие между data class и стандартным классом в языке программирования?
Ответ от нейросети
sobes.tech AI
В языке Kotlin (Android) data class — это специальный класс, предназначенный для хранения данных. Основное отличие от обычного класса в том, что компилятор автоматически генерирует для data class несколько полезных методов:
equals()иhashCode()для сравнения объектов по содержимому,toString()с информативным выводом,copy()для создания копий с изменёнными полями,- компоненты (
component1(),component2()и т.д.) для деструктуризации.
Обычный класс не имеет этих методов по умолчанию, их нужно писать вручную, если требуется.
Пример data class:
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)
Таким образом, data class удобен для моделей данных, где важна простота и корректное сравнение объектов.