Интерфейс AnnotatedElement
Методы getAnnotation () и getAnnotations (), использованные в предыдущем примере, определены интерфейсом AnnotatedElement, который определен в java.lang. reflect. Этот интерфейс поддерживает рефлексию для аннотации и реализован классами Method, Field, Constructor, Class и Package.
В дополнение к getAnnotation () и getAnnotations () интерфейс AnnotatedElement определяет два других метода. Первый из них — getDeclaredAnnotations (), который имеет следующую общую форму:
Annotation[] getDeclaredAnnotations()
Он возвращает не унаследованные аннотации, представленные в вызывающем объекте. Второй — это isAnnotationPresent (), имеющий такую форму:
boolean isAnnotationPresent(Class annoType)
Он возвращает true, если аннотация, специфицированная в аппоТуре, ассоциирована с вызывающим объектом. В противном случае возвращает false.
На заметку! Методы getAnnotation () и isAnnotationPresent () используют новое средство обобщений (generics) для гарантии безопасности типов. Поскольку обобщения не обсуждаются вплоть до главы 14, их сигнатура представлена в настоящей главе в черновой форме.