Spec-Zone.ru › OpenJDK 8

Элементы интерфейса


public interface Elements

Утилитарные методы для работы с элементами программы.

Примечание по совместимости: В будущих выпусках платформы в этот интерфейс могут быть добавлены методы.

С момента:
1.6
См. также:
ProcessingEnvironment.getElementUtils()

Методы

Модификатор и тип Метод и описание
List<? extends AnnotationMirror> getAllAnnotationMirrors(Element e)

Возвращает все аннотации, присутствующие на элементе, независимо от того, присутствуют они напрямую или через наследование.

List<? extends Element> getAllMembers(TypeElement type)

Возвращает всех членов элемента типа, унаследованные или объявленные напрямую.

Name getBinaryName(TypeElement type)

Возвращает бинарное имя элемента типа.

String getConstantExpression(Object value)

Возвращает текст константного выражения, представляющего примитивное значение или строку.

String getDocComment(Element e)

Возвращает текст комментария документации ("Javadoc") элемента.

Map<? extends ExecutableElement,? extends AnnotationValue> getElementValuesWithDefaults(AnnotationMirror a)

Возвращает значения элементов аннотации, включая значения по умолчанию.

Name getName(CharSequence cs)

Возвращает имя с той же последовательностью символов, что и аргумент.

PackageElement getPackageElement(CharSequence name)

Возвращает пакет по его полному имени.

PackageElement getPackageOf(Element type)

Возвращает пакет элемента.

TypeElement getTypeElement(CharSequence name)

Возвращает элемент типа по его каноническому имени.

boolean hides(Element hider, Element hidden)

Проверяет, скрывает ли один тип, метод или поле другой.

boolean isDeprecated(Element e)

Возвращает true, если элемент устарел, false в противном случае.

boolean isFunctionalInterface(TypeElement type)

Возвращает true, если элемент типа является функциональным интерфейсом, false в противном случае.

boolean overrides(ExecutableElement overrider, ExecutableElement overridden, TypeElement type)

Проверяет, переопределяет ли один метод, как член данного типа, другой метод.

void printElements(Writer w, Element... elements)

Выводит представление элементов в заданный писатель в указанном порядке.

Методы

getPackageElement

PackageElement getPackageElement(CharSequence name)

Возвращает пакет по его полному имени.

Параметры:
name - полное имя пакета или "" для безымянного пакета
Возвращает:
названный пакет или null в случае отсутствия

getTypeElement

TypeElement getTypeElement(CharSequence name)

Возвращает элемент типа по его каноническому имени.

Параметры:
name - каноническое имя
Возвращает:
элемент типа по имени или null в случае отсутствия

getElementValuesWithDefaults

Map<? extends ExecutableElement,? extends AnnotationValue> getElementValuesWithDefaults(AnnotationMirror a)

Возвращает значения элементов аннотации, включая значения по умолчанию.

Параметры:
a - аннотация для проверки
Возвращает:
значения элементов аннотации, включая значения по умолчанию
См. также:
AnnotationMirror.getElementValues()

getDocComment

String getDocComment(Element e)

Возвращает текст документационного комментария ("Javadoc") элемента.

Документационный комментарий элемента — это комментарий, начинающийся с "/**", заканчивающийся отдельным "*/", и непосредственно предшествующий элементу, игнорируя пробелы. Поэтому документационный комментарий содержит как минимум три "*" символа. Возвращаемый текст документационного комментария — это обработанная форма комментария, как он отображается в исходном коде. Ведущие "/**" и заключительные "*/" удаляются. Для строк комментария, начинающихся после начального "/**", ведущие пробельные символы отбрасываются, как и любые последовательные "*" символы, встречающиеся после пробела или в начале строки. Обработанные строки затем конкатенируются вместе (включая разделители строк) и возвращаются.

Параметры:
e - проверяемый элемент
Возвращает:
документационный комментарий элемента или null в случае отсутствия

isDeprecated

boolean isDeprecated(Element e)

Возвращает true если элемент устарел, false в противном случае.

Параметры:
e - проверяемый элемент
Возвращает:
true если элемент устарел, false в противном случае

getBinaryName

Name getBinaryName(TypeElement type)

Возвращает бинарное имя элемента типа.

Параметры:
type - проверяемый элемент типа
Возвращает:
бинарное имя
См. также:
TypeElement.getQualifiedName()

getPackageOf

PackageElement getPackageOf(Element type)

Возвращает пакет элемента. Пакет пакета — это сам пакет.

Параметры:
type - проверяемый элемент
Возвращает:
пакет элемента

getAllMembers

List<? extends Element> getAllMembers(TypeElement type)

Возвращает все члены элемента типа, унаследованные или объявленные непосредственно. Для класса результат также включает его конструкторы, но не локальные или анонимные классы.

Обратите внимание, что элементы определённых типов могут быть выделены с помощью методов в ElementFilter.

Параметры:
type - проверяемый тип
Возвращает:
все члены типа
См. также:
Element.getEnclosedElements()

getAllAnnotationMirrors

List<? extends AnnotationMirror> getAllAnnotationMirrors(Element e)

Возвращает все аннотации, присутствующие на элементе, присутствующие напрямую или через наследование.

Параметры:
e - проверяемый элемент
Возвращает:
все аннотации элемента
См. также:
Element.getAnnotationMirrors(), AnnotatedConstruct

hides

boolean hides(Element hider,
              Element hidden)

Проверяет, скрывает ли один тип, метод или поле другой.

Параметры:
hider - первый элемент
hidden - второй элемент
Возвращает:
true тогда и только тогда, когда первый элемент скрывает второй

overrides

boolean overrides(ExecutableElement overrider,
                  ExecutableElement overridden,
                  TypeElement type)

Проверяет, переопределяет ли один метод, как член данного типа, другой метод. Когда неабстрактный метод переопределяет абстрактный, первый также называется реализующим последний.

В простейшем и наиболее типичном использовании значение параметра type будет просто классом или интерфейсом, непосредственно содержащим overrider (возможно переопределяющий метод). Например, предположим, что m1 представляет метод String.hashCode и m2 представляет Object.hashCode. Тогда мы можем спросить, переопределяет ли m1 метод m2 в классе String (да):

assert elements.overrides(m1, m2, elements.getTypeElement("java.lang.String"));
Более интересный случай можно проиллюстрировать на следующем примере, в котором метод в типе A не переопределяет метод с таким же именем в типе B:
class A { public void m() {} } interface B { void m(); } ... m1 = ...; // A.m m2 = ...; // B.m assert ! elements.overrides(m1, m2, elements.getTypeElement("A"));
Однако, рассматривая его как член третьего типа C, метод в A переопределяет метод в B:
class C extends A implements B {} ... assert elements.overrides(m1, m2, elements.getTypeElement("C"));
Параметры:
overrider - первый метод, возможный переопределяемый
overridden - второй метод, возможно переопределяемый
type - тип, членом которого является первый метод
Возвращает:
true тогда и только тогда, когда первый метод переопределяет второй

getConstantExpression

String getConstantExpression(Object value)

Возвращает текст константного выражения, представляющего примитивное значение или строку. Возвращаемый текст имеет формат, подходящий для представления значения в исходном коде.

Параметры:
value - примитивное значение или строка
Возвращает:
текст константного выражения
Исключения:
IllegalArgumentException - если аргумент не является примитивным значением или строкой
См. также:
VariableElement.getConstantValue()

printElements

void printElements(Writer w,
                   Element... elements)

Выводит представление элементов в указанный поток в заданном порядке. Основное назначение этого метода — диагностика. Точный формат вывода не задан и может изменяться.

Параметры:
w - поток для вывода
elements - элементы для вывода

getName

Name getName(CharSequence cs)

Возвращает имя с той же последовательностью символов, что и аргумент.

Параметры:
cs - последовательность символов, которая должна быть возвращена как имя
Возвращает:
имя с той же последовательностью символов, что и аргумент

isFunctionalInterface

boolean isFunctionalInterface(TypeElement type)

Возвращает true если элемент типа — функциональный интерфейс, false в противном случае.

Параметры:
type - проверяемый элемент типа
Возвращает:
true если элемент является функциональным интерфейсом, false в противном случае
С:
1.8

© 1993, 2020, 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.

Spec-Zone.ru

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