Как стать автором
Обновить

Комментарии 3

Класс, предоставляющий доступ к закрытым данным родительского класса - паттерн "Паблик Морозов"

Думаю все, кто изучал Java, знают, что можно сделать так (в Kotlin такой возможности нет):

Не совсем так. Можно

abstract class Property<T>(value: T) {
    open var value: T = value
        protected set
}
class MutableProperty<T>(value: T) : Property<T>(value) {
    override var value: T
        get() = super.value
        set(value) { super.value = value }
}

Первое и последнее — это то, как делать вообщем-то не стоит)

Третье, четвертое и пятое - вроде вполне класический код, хотя продумать передачу вызова делегату на стадии проектирования было бы прямо вообще хорошо.

Про threadLocal действтиельно интересный инструмент

Зарегистрируйтесь на Хабре, чтобы оставить комментарий