Интерфейс TypeElement
- Все суперинтерфейсы:
- AnnotatedConstruct, Element, Parameterizable, QualifiedNameable
public interface TypeElement extends Element, Parameterizable, QualifiedNameable
Представляет элемент программы — класс или интерфейс. Обеспечивает доступ к информации о типе и его членах. Обратите внимание, что тип перечисления — это разновидность класса, а тип аннотации — разновидность интерфейса.
В то время как 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.element.Element
accept, asType, equals, getAnnotation, getAnnotationMirrors, getKind, getModifiers, hashCode Методы, унаследованные от интерфейса javax.lang.model.AnnotatedConstruct
getAnnotationsByType Методы
getEnclosedElements
List<? extends Element> getEnclosedElements()
Возвращает поля, методы, конструкторы и типы членов, непосредственно объявленные в этом классе или интерфейсе. Это включает в себя любой (явный) конструктор по умолчанию и неявные values и valueOf методы типа перечисления.
Обратите внимание, что в качестве конкретного примера общих требований к точности и поведения упорядочивания, требуемого этим интерфейсом, список вложенных элементов будет возвращен в естественном порядке для исходного источника информации о типе. Например, если информация о типе получена из исходного файла, элементы будут возвращены в порядке исходного кода. (Однако в этом случае порядок синтезированных элементов, таких как конструктор по умолчанию, не определен.)
- Определено в:
-
getEnclosedElementsв интерфейсеElement - Возвращает:
- вложенные элементы в правильном порядке или пустой список, если их нет
- См. также:
-
PackageElement.getEnclosedElements(),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()
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.