Sobes.tech
Junior — Middle

Ako sa líšia modifikátory prístupu v jazykoch Java a Kotlin?

sobes.tech AI

Odpoveď od AI

V Jave a Kotlin majú modifikátory prístupu podobné ciele, ale líšia sa v množine a správaní:

  • Java:

    • public — prístup odkiaľkoľvek.
    • protected — prístup v rámci balíka a v podtriedach.
    • (package-private) — prístup iba v rámci balíka (ak nie je špecifikovaný modifikátor).
    • private — prístup iba v rámci triedy.
  • Kotlin:

    • public (predvolené) — prístup odkiaľkoľvek.
    • internal — prístup v rámci modulu (napríklad v rámci jedného Gradle modulu).
    • protected — prístup v podtriedach, ale iba v rámci toho istého súboru (na rozdiel od Javy, kde protected umožňuje prístup z balíka).
    • private — prístup v rámci triedy alebo súboru (ak je deklarovaný na úrovni súboru).

Hlavný rozdiel je, že v Kotlinu existuje modifikátor internal, ktorý obmedzuje viditeľnosť na modul, a tiež protected v Kotlinu nedáva prístup v rámci balíka, iba v podtriedach. V Jave neexistuje internal, a protected umožňuje prístup ako v balíku, tak v podtriedach.