Kotlin: Public получить частный набор var

Каков правильный способ определения var в kotlin, который имеет публичный getter и частный (только внутренне модифицируемый) сеттер?

Ответ 1

var setterVisibility: String = "abc" // Initializer required, not a nullable type
    private set // the setter is private and has the default implementation

См. Свойства: Getter and Setter

Ответ 2

Вы можете легко сделать это, используя следующий подход:

var atmosphericPressure: Double = 760.0
    get() = field
    private set(value) { 
        field = value 
    }

Посмотрите на этот пост на Medium: собственность, добытчик и сеттер в Kotlin.

Надеюсь это поможет.