Sobes.tech
Intern

Šta su modifikatori pristupa?

sobes.tech АИ

Одговор од АИ

Modifikatori pristupa u Kotlinu određuju vidljivost deklaracija (klasa, interfejsa, funkcija, svojstava). Oni kontrolišu gde se može koristiti ovaj element.

Dostupni modifikatori:

  • public (podrazumevano): Vidljivost sa bilo kog mesta.
  • private: Vidljivost samo unutar bloka koji ga sadrži (klasa, fajl).
  • protected: Vidljivost unutar klase i svih njenih podklasa. Nije dostupan za članove na najvišem nivou (definisane van klase).
  • internal: Vidljivost samo unutar istog modula.

Primer:

// fajl: Example.kt

package com.example.app

private const val PRIVATE_CONSTANT = 1 // Vidljiv samo u ovom fajlu

public class PublicClass { // Vidljiv sa bilo kog mesta

    private var privateProperty = 0 // Vidljiv samo unutar PublicClass

    protected open fun protectedMethod() { // Vidljiv unutar PublicClass i njenih podklasa
        // ...
    }

    internal fun internalMethod() { // Vidljiv samo unutar modula ComExampleApp
        // ...
    }
}

open class BaseClass {
    protected val protectedValue = 5 // Vidljiv unutar BaseClass i njenih podklasa
}

class DerivedClass : BaseClass() {
    fun useProtectedValue() {
        println(protectedValue) // Pristup protectedValue iz podklase
    }
}