Back to questions
Junior — Middle
60
Можно ли определить наследование между классом данных и другим классом?
Companies where asked
IBS
Answer from AI
sobes.tech AI
В Kotlin класс данных (data class) может наследовать другой класс, если он не является final (то есть открыт для наследования). Однако класс данных автоматически наследует от Any и должен иметь хотя бы один параметр в конструкторе.
Важно:
- Класс данных не может быть
openилиabstract. - Наследование от класса данных возможно, но класс данных сам не может быть родителем (то есть нельзя наследоваться от data class).
Пример:
open class Person(val name: String)
data class Employee(val id: Int, val person: Person) : Person(person.name)
Таким образом, наследование между классом данных и другим классом возможно, но с ограничениями, и чаще используют композицию (вложение объектов) вместо наследования для классов данных.