Spec-Zone.ru › OpenJDK 24

Интерфейс ModuleElement

Все суперинтерфейсы:
AnnotatedConstruct, Element, QualifiedNameable
public interface ModuleElement extends Element, QualifiedNameable
Представляет элемент программы модуля. Предоставляет доступ к информации о модуле, его директивах и его членах.
Примечание API:
Представленный модуль может иметь явное представление ссылки (исходный код или исполняемый выход) или может быть создан из неявной информации. Явный и автономный конструкт исходного кода для модуля обычно является module-info.java файлом (JLS 7.7). Автоматические модули (JLS 7.7.1) — это именованные модули, у которых нет module-info файла. Неявная информация используется для моделирования безымянных модулей.

В контексте обработки аннотаций элемент модуля может быть:

  • создан из исходных данных для выполнения инструмента
  • запрошен в конфигурированной среде
См. Спецификацию языка Java:
7.7 Объявления модулей
С:
9
См. также:
  • Elements.getModuleOf(javax.lang.model.element.Element)

Краткое описание вложенных классов

Модификатор и тип Интерфейс Описание
static interface  ModuleElement.Directive
Представляет директиву в объявлении этого модуля.
static enum  ModuleElement.DirectiveKind
kind директивы.
static interface  ModuleElement.DirectiveVisitor<R,P>
Посетитель модульных директив в стиле шаблона посетителя.
static interface  ModuleElement.ExportsDirective
Экспортируемый пакет модуля.
static interface  ModuleElement.OpensDirective
Открытый пакет модуля.
static interface  ModuleElement.ProvidesDirective
Реализация сервиса, предоставляемого модулем.
static interface  ModuleElement.RequiresDirective
Зависимость модуля.
static interface  ModuleElement.UsesDirective
Ссылка на сервис, используемый модулем.

Краткое описание методов

Модификатор и тип Метод Описание
TypeMirror asType()
Возвращает псевдотип для этого модуля.
List<? extends ModuleElement.Directive> getDirectives()
Возвращает директивы, содержащиеся в объявлении этого модуля.
List<? extends Element> getEnclosedElements()
Возвращает пакеты в этом модуле.
Element getEnclosingElement()
Возвращает null, так как модуль не заключён в другой элемент.
Name getQualifiedName()
Возвращает полное квалифицированное имя этого модуля.
Name getSimpleName()
Возвращает простое имя этого модуля.
boolean isOpen()
Возвращает true, если это открытый модуль, и false в противном случае.
boolean isUnnamed()
Возвращает true, если это безымянный модуль, и false в противном случае.

Методы, объявленные в интерфейсе javax.lang.model.element.Element

accept, equals, getAnnotation, getAnnotationMirrors, getAnnotationsByType, getKind, getModifiers, hashCode

Подробное описание методов

asType

TypeMirror asType()
Возвращает псевдотип для этого модуля.
Определено в:
asType в интерфейсе Element
Возвращает:
псевдотип для этого модуля
См. также:
  • NoType
  • TypeKind.MODULE

getQualifiedName

Name getQualifiedName()
Возвращает полное квалифицированное имя этого модуля. Для безымянного модуля возвращается пустое имя.
Определено в:
getQualifiedName в интерфейсе QualifiedNameable
Примечание API:
Если имя модуля состоит из одного идентификатора, то этот метод возвращает этот идентификатор, который считается полным квалифицированным именем модуля, несмотря на то, что он не находится в квалифицированной форме. Если имя модуля состоит из более чем одного идентификатора, то этот метод возвращает всё имя.
Возвращает:
полное квалифицированное имя этого модуля или пустое имя, если это безымянный модуль
См. Спецификацию языка Java:
6.2 Имена и идентификаторы

getSimpleName

Name getSimpleName()
Возвращает простое имя этого модуля. Для безымянного модуля возвращается пустое имя.
Определено в:
getSimpleName в интерфейсе Element
Примечание API:
Если имя модуля состоит из одного идентификатора, то этот метод возвращает этот идентификатор. Если имя модуля состоит из более чем одного идентификатора, то этот метод возвращает самый правый такой идентификатор, который считается простым именем модуля.
Возвращает:
простое имя этого модуля или пустое имя, если это безымянный модуль
См. Спецификацию языка Java:
6.2 Имена и идентификаторы
См. также:
  • PackageElement.getSimpleName()
  • ExecutableElement.getSimpleName()
  • TypeElement.getSimpleName()
  • VariableElement.getSimpleName()
  • getSimpleName()
  • RecordComponentElement.getSimpleName()

getEnclosedElements

List<? extends Element> getEnclosedElements()
Возвращает пакеты в этом модуле.
Определено в:
getEnclosedElements в интерфейсе Element
Возвращает:
пакеты в этом модуле
См. также:
  • TypeElement.getEnclosedElements()
  • PackageElement.getEnclosedElements()
  • getEnclosedElements()
  • Elements.getAllMembers(javax.lang.model.element.TypeElement)

isOpen

boolean isOpen()
Возвращает true, если это открытый модуль, и false в противном случае.
Возвращает:
true, если это открытый модуль, и false в противном случае

isUnnamed

boolean isUnnamed()
Возвращает true, если это безымянный модуль, и false в противном случае.
Возвращает:
true, если это безымянный модуль, и false в противном случае
См. Спецификацию языка Java:
7.7.5 Безымянные модули

getEnclosingElement

Element getEnclosingElement()
Возвращает null, так как модуль не заключён в другой элемент.
Определено в:
getEnclosingElement в интерфейсе Element
Возвращает:
null
См. также:
  • Elements.getPackageOf(javax.lang.model.element.Element)

getDirectives

List<? extends ModuleElement.Directive> getDirectives()
Возвращает директивы, содержащиеся в объявлении этого модуля.
Возвращает:
директивы в объявлении этого модуля

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.compiler/javax/lang/model/element/ModuleElement.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API