Свойство является средством доступа к некоторым данным.У вас будет получатель, а если свойство изменяемое, то и установщик.Поэтому вы можете переопределить любое объявленное свойство val
свойством var
:
interface Transaction {
val transferDate: Date
}
class MoneyTransaction: Transaction {
override lateinit var transferDate: Date
private set
}
Обратите внимание, что вам не нужно делать свойство lateinit var
, если вы инициализируете его с объектом;Я просто добавил его, чтобы ваш пример компилировался правильно.