Junior — Middle
Da li je dozvoljeno koristiti promenljive (var) u parametrima konstruktora data klase u Kotlinu?
sobes.tech АИ
Одговор од АИ
У Kotlin-у, у параметрима конструктора data класе не може да се користи модификатор var. Параметри конструктора data класе по подразумеванию су val (непроменљиви) или var (променљиви), али при декларацији параметара конструктора треба јасно назначити var или val.
На пример, исправна декларација data класе са var:
data class User(var name: String, val age: Int)
Ако не наведете var или val, параметри ће бити само параметри конструктора, али не својства класе, и data класа неће моћи да генерише неопходне методе (equals, hashCode, toString) за њих.
Стога, коришћење само var без val или var у параметрима конструктора data класе није дозвољено — потребно је јасно назначити var или val.