Sobes.tech
Intern

Mi az hozzáférés módosítók?

sobes.tech MI

Válasz az MI-től

A Kotlinban a hozzáférés módosítói meghatározzák a deklarációk (osztályok, interfészek, függvények, tulajdonságok) láthatóságát. Ellenőrzik, hogy hol használható ez az elem.

Elérhető módosítók:

  • public (alapértelmezett): Minden helyről látható.
  • private: Csak a tartalmazó blokk (osztály, fájl) belsejében látható.
  • protected: Az osztályon belül és az összes leszármazott osztályban látható. Nem elérhető a felső szintű tagok számára (amelyeket az osztályon kívül definiáltak).
  • internal: Csak ugyanazon a modulon belül látható.

Példa:

// fájl: Example.kt

package com.example.app

private const val PRIVATE_CONSTANT = 1 // Csak ebben a fájlban látható

public class PublicClass { // Bármilyen helyről látható

    private var privateProperty = 0 // Csak a PublicClass belsejében látható

    protected open fun protectedMethod() { // A PublicClass és leszármazottai között látható
        // ...
    }

    internal fun internalMethod() { // Csak a ComExampleApp modulon belül látható
        // ...
    }
}

open class BaseClass {
    protected val protectedValue = 5 // A BaseClass és leszármazottai között látható
}

class DerivedClass : BaseClass() {
    fun useProtectedValue() {
        println(protectedValue) // Hozzáférés a protectedValue-hez egy leszármazottból
    }
}