Интерфейс TypeElement

Все суперинтерфейсы:
AnnotatedConstruct, Element, Parameterizable, QualifiedNameable
public interface TypeElement
extends Element, Parameterizable, QualifiedNameable

Представляет элемент программы — класс или интерфейс. Предоставляет доступ к информации о типе и его членах. Обратите внимание, что перечисление (enum) — это вид класса, а тип аннотации — вид интерфейса.

Хотя TypeElement представляет собой элемент класса или интерфейса, DeclaredType представляет собой тип класса или интерфейса, при этом последний является использованием (или вызовом) первого. Различие наиболее очевидно с дженериками, для которых один элемент может определять целое семейство типов. Например, элемент java.util.Set соответствует параметризованным типам java.util.Set<String> и java.util.Set<Number> (и многим другим), а также непараметризованному типу java.util.Set.

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

С момента:
1.6
См. также:
DeclaredType

Методы

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

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

Element getEnclosingElement()

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

List<? extends TypeMirror> getInterfaces()

Возвращает типы интерфейсов, непосредственно реализованные этим классом или расширенные этим интерфейсом.

NestingKind getNestingKind()

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

Name getQualifiedName()

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

Name getSimpleName()

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

TypeMirror getSuperclass()

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

List<? extends TypeParameterElement> getTypeParameters()

Возвращает формальные параметры типа этого элемента типа в порядке объявления.

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

getAnnotationsByType

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

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

Методы

getEnclosedElements

List<? extends Element> getEnclosedElements()

Возвращает поля, методы, конструкторы и типы членов, которые непосредственно объявлены в этом классе или интерфейсе. Это включает любые обязательные элементы, такие как (явный) конструктор по умолчанию и неявные values и valueOf методы типа перечисления.

Определено в:
getEnclosedElements в интерфейсе Element
Примечание API:
В качестве конкретного примера общих требований к точности и поведения упорядочивания, требуемых от этого интерфейса, список вложенных элементов возвращается в естественном порядке для исходного источника информации о типе. Например, если информация о типе происходит из исходного файла, элементы возвращаются в порядке исходного кода. (Однако в этом случае порядок неявно объявленных элементов, таких как конструкторы по умолчанию, не указан.)
Возвращает:
вложенные элементы в правильном порядке или пустой список, если их нет
См. также:
getEnclosedElements(), PackageElement.getEnclosedElements(), ModuleElement.getEnclosedElements(), Elements.getAllMembers(javax.lang.model.element.TypeElement)

getNestingKind

NestingKind getNestingKind()

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

Возвращает:
вид вложения этого элемента типа

getQualifiedName

Name getQualifiedName()

Возвращает полное имя этого элемента типа. Более точно, возвращает каноническое имя. Для локальных и анонимных классов, у которых нет канонических имен, возвращается пустое имя.

Имя дженерического типа не включает ссылки на его формальные параметры типа. Например, полное имя интерфейса java.util.Set<E> — "java.util.Set". Вложенные типы используют "." в качестве разделителя, например, "java.util.Map.Entry".

Определено в:
getQualifiedName в интерфейсе QualifiedNameable
Возвращает:
полное имя этого класса или интерфейса или пустое имя, если такового нет
См. также:
Elements.getBinaryName(javax.lang.model.element.TypeElement)

getSimpleName

Name getSimpleName()

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

Определено в:
getSimpleName в интерфейсе Element
Возвращает:
простое имя этого класса или интерфейса, пустое имя для анонимного класса
См. также:
PackageElement.getSimpleName(), ExecutableElement.getSimpleName(), getSimpleName(), VariableElement.getSimpleName(), ModuleElement.getSimpleName()

getSuperclass

TypeMirror getSuperclass()

Возвращает непосредственный суперкласс этого элемента типа. Если этот элемент типа представляет собой интерфейс или класс java.lang.Object, то возвращается NoType с типом NONE.

Возвращает:
непосредственный суперкласс или NoType, если его нет

getInterfaces

List<? extends TypeMirror> getInterfaces()

Возвращает типы интерфейсов, непосредственно реализованные этим классом или расширенные этим интерфейсом.

Возвращает:
типы интерфейсов, непосредственно реализованные этим классом или расширенные этим интерфейсом, или пустой список, если их нет

getTypeParameters

List<? extends TypeParameterElement> getTypeParameters()

Возвращает формальные параметры типа этого элемента типа в порядке объявления.

Определено в:
getTypeParameters в интерфейсе Parameterizable
Возвращает:
формальные параметры типа или пустой список, если их нет

getEnclosingElement

Element getEnclosingElement()

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

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

© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.compiler/javax/lang/model/element/TypeElement.html

Spec-Zone .ru
спецификации, руководства, описания, API