Chapter 15 Модули Flashcards
В широком смысле модули помогают определить зависимость одной единицы кода от другой. Верно ли это утверждение?
верно
Какое ключевое слово применяется для объявления модуля?
module имя_модуля { // определение модуля }
Ключевые слова, поддерживающие модули, являются контекстно-зависимыми. Объясните, что это значит.
Контекстно-зависимое ключевое слово распознается как ключевое слово только в определенных ситуациях, связанных с его использованием, и больше н и где. Поскольку речь идет о ключевых словах, поддерживающих модуль, они распознаются как ключевые слова только в объявлении модуля.
Что представляет собой файл module-info.java и в чем его важность?
Файл module-info.java содержит объявление модуля.
Какое ключевое слово используется для объявления зависимости одного модуля от другого?
requires
Чтобы открытые компоненты пакета стали доступны за пределами модуля, в котором они содержатся, пакет следует указать в инструкции _____
exports
Почему путь к модулю важно указывать при компиляции или выполнении модульного приложения?
Путь к модулю определяет местонахождение модулей приложения.
Что делает инструкция requires transitive?
Инструкция exports экспортирует пакет
Какие ключевые слова применяются для работы с модульными службами?
Модули поддерживают службы с помощью ключевых provides , uses и with. Если нужно указать, что модуль реализует службу, используйте инструкцию provides . Для указания службы, которая требуется модулю, предназначена инструкция uses . Если же нужно указать конкретный тип провайдера службы , воспользуйтесь ключевым словом with.
Служба определяет общую функциональность программной единицы с помощью интерфейса или абстрактного класса. Верно ли это утверждение?
Да.В Java службой называется программная единица, функциональность которой определяется интерфейсом или абстрактным классом. Таким образом, служба описывает общее поведение программы.
Провайдер службы ________________ службу.
реализует
Какой класс используется для загрузки службы?
ServiceLoader
Может ли модульная зависимость быть необязательной на этапе выполнения? Если да, то каким образом?
Да, с помощью инструкции exports static.
Вкратце объясните, для чего используются инструкции open и opens.
Добавление ключевого слова open в объявление модуля разрешает доступ к его пакетам на этапе выполнения, в том числе путем рефлексии, независимо от того, был и ли пакеты экспортированы. Инструкция opens обеспечивает доступ к пакету на этапе выполнения, в том числе для целей рефлексии.