Junior
60
questionbank

Расскажи о модификаторах доступа в Java и Kotlin.

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

В Java:

  • public: доступен из любого места.
  • protected: доступен внутри класса, пакета и подклассов.
  • (без модификатора): доступен внутри пакета (package-private).
  • private: доступен только внутри класса.

В Kotlin:

  • public: доступен из любого места (по умолчанию).
  • internal: доступен внутри модуля.
  • protected: доступен внутри класса и его подклассов (отличается от Java в части доступа в пакете).
  • private: доступен только внутри класса/файла.

Различия:

  • В Kotlin нет модификатора "package-private", его аналог — internal с другим скоупом (модуль).
  • В Kotlin protected не предоставляет доступ в пределах пакета, как в Java.
  • В Kotlin private можно использовать и для top-level объявлений (функций, свойств) в файле, делая их доступными только внутри этого файла.
kotlin