Sobes.tech
Junior — Middle

Ar galite paaiškinti protected prieigos modifikatoriaus paskirtį ir naudojimą Kotlin kalboje?

sobes.tech AI

Atsakymas iš AI

Kotlin'e piekļuves modifikators protected nozīmē, ka klases loceklis ir pieejams pašā klasē un tās apakšklasēs (mantoņos). Atšķirībā no Java, Kotlin protected neļauj piekļūt loceklim no citām tajā pašā paketē esošajām klasēm.

Piemērs:

open class Parent {
    protected val secret = "Šī ir aizsargāta īpašība"
}

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

fun main() {
    val child = Child()
    println(child.revealSecret()) // Darbojas
    // println(child.secret) // Kļūda: secret nav pieejams ārpus klases un tās mantoņiem
}

Tādējādi, protected tiek izmantots piekļuves ierobežošanai, ļaujot mantoņiem izmantot un mainīt aizsargātos locekļus, bet tos slēpjot no ārējā koda.