IAnnotatedElement.GetDeclaredAnnotationsByType(Class) 方法

定义

如果此类批注直接>存在/em> 或 <em>间接存在<</em>,则返回指定类型的此元素的批注<(s)。

[Android.Runtime.Register("getDeclaredAnnotationsByType", "(Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;", "GetGetDeclaredAnnotationsByType_Ljava_lang_Class_Handler:Java.Lang.Reflect.IAnnotatedElement, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T extends java.lang.annotation.Annotation" })]
public virtual Java.Lang.Object[]? GetDeclaredAnnotationsByType (Java.Lang.Class annotationClass);
[<Android.Runtime.Register("getDeclaredAnnotationsByType", "(Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;", "GetGetDeclaredAnnotationsByType_Ljava_lang_Class_Handler:Java.Lang.Reflect.IAnnotatedElement, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=24)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T extends java.lang.annotation.Annotation" })>]
abstract member GetDeclaredAnnotationsByType : Java.Lang.Class -> Java.Lang.Object[]
override this.GetDeclaredAnnotationsByType : Java.Lang.Class -> Java.Lang.Object[]

参数

annotationClass
Class

对应于批注类型的类对象

返回

Object[]

如果此元素直接或间接存在于此元素上,则指定批注类型的所有此元素的批注,否则为长度为零的数组

属性

注解

如果此类批注直接>存在/em> 或 <em>间接存在<</em>,则返回指定类型的此元素的批注<(s)。 此方法忽略继承的批注。

如果此元素上没有直接或间接存在的指定批注,则返回值为长度为 0 的数组。

此方法 #getDeclaredAnnotation(Class) 之间的区别在于,此方法检测其参数是否为 <em>可重复批注类型</em> (JLS 9.6),如果是,则尝试通过“查看”容器批注(如果存在)来查找该类型的一个或多个批注。

此方法的调用方可以自由修改返回的数组;它不会影响返回给其他调用方的数组。

已在 1.8 中添加。

适用于 . 的 java.lang.reflect.AnnotatedElement.getDeclaredAnnotationsByType(java.lang.Class<T>)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于