Sobes.tech
Back to questions
Junior — Middle
77

Можете объяснить назначение и использование модификатора доступа protected в языке Kotlin?

Companies where asked
Технократия
Ozon FreshOzon Fresh

Answer from AI

sobes.tech AI

В Kotlin модификатор доступа protected означает, что член класса доступен внутри самого класса и в его подклассах (наследниках). В отличие от Java, в Kotlin protected не даёт доступа к члену из других классов того же пакета.

Пример использования:

open class Parent {
    protected val secret = "Это защищённое свойство"
}

class Child : Parent() {
    fun revealSecret() = secret
}

fun main() {
    val child = Child()
    println(child.revealSecret()) // Работает
    // println(child.secret) // Ошибка: secret недоступно вне класса и наследников
}

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