Junior — Middle
Este acceptabil să definești un constructor fără parametri în clasele de date?
sobes.tech AI
Răspuns de la AI
В Kotlin дата-классы обычно требуют определения всех свойств в конструкторе, чтобы автоматически генерировать методы equals(), hashCode(), toString() и copy(). Определение конструктора без параметров в дата-классе допустимо, но тогда все свойства должны иметь значения по умолчанию. Например:
data class User(val name: String = "", val age: Int = 0)
Если вы определите пустой конструктор без параметров, но без значений по умолчанию для свойств, компилятор выдаст ошибку. Таким образом, конструктор без параметров допустим, если все свойства имеют значения по умолчанию.