Интерфейс AnnotatedType
- Все суперинтерфейсы:
AnnotatedElement
- Все известные подинтерфейсы:
-
AnnotatedArrayType,AnnotatedParameterizedType,AnnotatedTypeVariable,AnnotatedWildcardType
public interface AnnotatedType extends AnnotatedElement
AnnotatedType представляет потенциально аннотированное использование типа в программе, выполняемой в настоящее время в этой виртуальной машине. Это использование может быть любого типа в языке программирования Java, включая тип массива, параметризованный тип, переменную типа или тип-дикий символ. Обратите внимание, что любые аннотации, возвращаемые методами в этом интерфейсе, являются аннотациями типа (JLS 9.7.4), так как сущность, потенциально подлежащая аннотации, является типом.Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
default AnnotatedType |
getAnnotatedOwnerType() |
Возвращает потенциально аннотированный тип, к которому принадлежит этот тип, если этот тип представляет вложенный тип. |
<T extends Annotation> |
getAnnotation |
Возвращает аннотацию этого элемента для указанного типа, если такая аннотация присутствует, в противном случае null. |
Annotation[] |
getAnnotations() |
Возвращает аннотации, которые присутствуют на этом элементе. |
Annotation[] |
getDeclaredAnnotations() |
Возвращает аннотации, которые непосредственно присутствуют на этом элементе. |
Type |
getType() |
Возвращает базовый тип, который представляет этот аннотированный тип. |
Методы, объявленные в интерфейсе java.lang.reflect.AnnotatedElement
getAnnotationsByType, getDeclaredAnnotation, getDeclaredAnnotationsByType, isAnnotationPresent
Подробное описание методов
getAnnotatedOwnerType
default AnnotatedType getAnnotatedOwnerType()
@TA O<T>.I<S>, возвращает представление @TA O<T>. Возвращает null, если этот AnnotatedType представляет верхнеуровневый класс или интерфейс, или локальный или анонимный класс, или примитивный тип, или void.
Возвращает null, если этот AnnotatedType является экземпляром AnnotatedArrayType, AnnotatedTypeVariable или AnnotatedWildcardType.
- Требования к реализации:
- Эта реализация по умолчанию возвращает
nullи не выполняет никаких других действий. - Возвращает:
- объект
AnnotatedType, представляющий потенциально аннотированный тип, к которому принадлежит этот тип, илиnull - Исключение:
-
TypeNotPresentException- если тип владельца ссылается на несуществующее объявление класса или интерфейса -
MalformedParameterizedTypeException- если тип владельца ссылается на параметризованный тип, который нельзя создать ни по какой причине - С:
- 9
getType
Type getType()
- Возвращает:
- тип, который представляет этот аннотированный тип
getAnnotation
<T extends Annotation> T getAnnotation(Class<T> annotationClass)
Обратите внимание, что любая аннотация, возвращенная этим методом, является аннотацией типа.
- Определено:
-
getAnnotationв интерфейсеAnnotatedElement - Параметры типа:
T- тип аннотации, для запроса и возврата, если она присутствует- Параметры:
-
annotationClass- объект Class, соответствующий типу аннотации - Возвращает:
- аннотация элемента для указанного типа аннотации, если она присутствует в элементе, иначе null
- Исключение:
-
NullPointerException- если указанный класс аннотации имеет значение null
getAnnotations
Annotation[] getAnnotations()
Обратите внимание, что любые аннотации, возвращаемые этим методом, являются аннотациями типа.
- Определено:
-
getAnnotationsв интерфейсеAnnotatedElement - Возвращает:
- присутствующие аннотации на этом элементе
getDeclaredAnnotations
Annotation[] getDeclaredAnnotations()
Обратите внимание, что любые аннотации, возвращаемые этим методом, являются аннотациями типа.
- Определено:
-
getDeclaredAnnotationsв интерфейсеAnnotatedElement - Возвращает:
- аннотации, непосредственно присутствующие на этом элементе
© 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.base/java/lang/reflect/AnnotatedType.html