Sobes.tech
Junior — Middle

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

sobes.tech AI

Отговор от 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 се използва за ограничаване на достъпа, позволявайки на наследниците да използват и променят защитените членове, но ги скрива от външния код.