java.lang.Object
java.lang.reflect.Parameter
- 所有已实现的接口:
AnnotatedElement
有关方法参数的信息。
Parameter 提供有关方法参数的信息,包括其名称和修饰符。它还提供了另一种获取参数属性的方法。
- 自从:
- 1.8
-
方法总结
修饰符和类型方法描述为该对象表示的参数返回不可修改的 访问标志 集,可能为空。boolean基于可执行文件和索引进行比较。返回一个 AnnotatedType 对象,该对象表示使用类型来指定此 Parameter 表示的形式参数的类型。<T extends Annotation>
TgetAnnotation(Class<T> annotationClass) 如果此类注解为 present ,则返回此元素针对指定类型的注解,否则为 null。返回此元素上的 present 注释。<T extends Annotation>
T[]getAnnotationsByType(Class<T> annotationClass) 返回带有此元素的 associated 注释。<T extends Annotation>
TgetDeclaredAnnotation(Class<T> annotationClass) 如果此类注解为 directly present ,则返回此元素针对指定类型的注解,否则为 null。返回此元素上的 directly present 注释。<T extends Annotation>
T[]getDeclaredAnnotationsByType(Class<T> annotationClass) 如果此类注解是 directly present 或 indirectly present ,则返回此元素的指定类型的注解。返回声明此参数的Executable。int返回此对象表示的参数的 Java 语言 modifiers。getName()返回参数的名称。返回一个Type对象,该对象标识此Parameter对象表示的参数的参数化类型。Class<?>getType()返回一个Class对象,该对象标识此Parameter对象表示的参数的声明类型。inthashCode()返回基于可执行文件的哈希码和索引的哈希码。boolean如果此参数在源代码中隐式声明,则返回true;否则返回false。boolean如果参数根据类文件具有名称,则返回 true;否则返回假。boolean如果此参数在源代码中既未隐式也未显式声明,则返回true;否则返回false。boolean如果此参数表示可变参数列表,则返回true;否则返回false。toString()返回描述此参数的字符串。在接口 java.lang.reflect.AnnotatedElement 中声明的方法
isAnnotationPresent
-
方法详情
-
equals
基于可执行文件和索引进行比较。 -
hashCode
public int hashCode()返回基于可执行文件的哈希码和索引的哈希码。 -
isNamePresent
public boolean isNamePresent()如果参数根据类文件具有名称,则返回 true;否则返回假。参数是否有名称由声明该参数的方法的 MethodParameters 属性决定。- 返回:
- 当且仅当参数根据类文件具有名称时才为真。
-
toString
返回描述此参数的字符串。格式是参数的修饰符,如果有的话,按照推荐的规范顺序Java 语言规范,后跟参数的完全限定类型(如果参数是变量 arity,则不包括最后一个 []),如果参数是变量 arity,则后跟“...”,然后是空格,然后是参数的名称范围。 -
getDeclaringExecutable
返回声明此参数的Executable。- 返回:
Executable声明这个参数
-
getModifiers
public int getModifiers()返回此对象表示的参数的 Java 语言 modifiers。- 返回:
- 此对象表示的参数的 Java 语言 modifiers
- 看Java 语言规范:
-
8.4.1 形式参数
- 参见:
-
accessFlags
为该对象表示的参数返回不可修改的 访问标志 集,可能为空。- 返回:
- 此对象表示的参数的不可修改的 访问标志 集,可能为空
- 看Java 虚拟机规范:
-
4.7.24 MethodParameters 属性
- 自从:
- 20
- 参见:
-
getName
返回参数的名称。如果参数的名称是 展示 ,则此方法返回类文件提供的名称。否则,此方法合成一个 argN 形式的名称,其中 N 是参数在声明参数的方法的描述符中的索引。- 返回:
- 参数的名称,由类文件提供或如果类文件未提供名称则合成。
-
getParameterizedType
返回一个Type对象,该对象标识此Parameter对象表示的参数的参数化类型。- 返回:
-
一个
Type对象标识此对象表示的参数的参数化类型
-
getType
返回一个Class对象,该对象标识此Parameter对象表示的参数的声明类型。- 返回:
-
一个
Class对象,标识此对象表示的参数的声明类型
-
getAnnotatedType
返回一个 AnnotatedType 对象,该对象表示使用类型来指定此 Parameter 表示的形式参数的类型。- 返回:
-
一个
AnnotatedType对象,表示使用类型来指定此 Parameter 表示的形式参数的类型
-
isImplicit
public boolean isImplicit()如果此参数在源代码中隐式声明,则返回true;否则返回false。- 返回:
- 当且仅当此参数隐式声明为由定义时为真Java 语言规范.
-
isSynthetic
public boolean isSynthetic()如果此参数在源代码中既未隐式也未显式声明,则返回true;否则返回false。- 返回:
- 当且仅当此参数是一个由定义的合成构造时才为真Java 语言规范.
- 看Java 语言规范:
-
13.1 二进制形式
- 参见:
-
isVarArgs
public boolean isVarArgs()如果此参数表示可变参数列表,则返回true;否则返回false。- 返回:
trueif 仅当此参数表示可变参数列表时。
-
getAnnotation
如果此类注解为 present ,则返回此元素针对指定类型的注解,否则为 null。请注意,此方法返回的任何注解都是声明注解。
- 指定者:
getAnnotation在接口AnnotatedElement中- 类型参数:
T- 要查询并返回的注释类型(如果存在)- 参数:
annotationClass——注解类型对应的Class对象- 返回:
- 如果此元素上存在此元素的指定注解类型的注解,则为 null
- 抛出:
NullPointerException- 如果给定的注释类为 null
-
getAnnotationsByType
返回带有此元素的 associated 注释。如果这个元素没有注解associated,返回值是一个长度为0的数组。这个方法和AnnotatedElement.getAnnotation(Class)的区别是这个方法检测它的参数是否是一个repeatable annotation type(JLS 9.6),如果是,则尝试寻找通过“查看”容器注解来查看该类型的一个或多个注释。该方法的调用者可以自由修改返回的数组;它不会影响返回给其他调用者的数组。请注意,此方法返回的任何注释都是声明注解。
- 指定者:
getAnnotationsByType在接口AnnotatedElement中- 类型参数:
T- 要查询并返回的注释类型(如果存在)- 参数:
annotationClass——注解类型对应的Class对象- 返回:
- 如果与此元素相关联,则为指定注解类型的所有此元素的注释,否则为长度为零的数组
- 抛出:
NullPointerException- 如果给定的注释类为 null
-
getDeclaredAnnotations
返回此元素上的 directly present 注释。此方法忽略继承的注释。如果该元素上没有注解directly present,则返回值为长度为0的数组。该方法的调用者可以自由修改返回的数组;它不会影响返回给其他调用者的数组。请注意,此方法返回的任何注释都是声明注解。
- 指定者:
getDeclaredAnnotations在接口AnnotatedElement中- 返回:
- 注释直接出现在这个元素上
-
getDeclaredAnnotation
如果此类注解为 directly present ,则返回此元素针对指定类型的注解,否则为 null。此方法忽略继承的注释。 (如果没有注释直接出现在该元素上,则返回 null。)请注意,此方法返回的任何注解都是声明注解。
- 指定者:
getDeclaredAnnotation在接口AnnotatedElement中- 类型参数:
T- 如果直接存在则查询并返回的注解类型- 参数:
annotationClass——注解类型对应的Class对象- 返回:
- 如果直接出现在此元素上,则此元素针对指定注解类型的注解,否则为 null
- 抛出:
NullPointerException- 如果给定的注释类为 null
-
getDeclaredAnnotationsByType
如果此类注解是 directly present 或 indirectly present ,则返回此元素的指定类型的注解。此方法忽略继承的注释。如果没有指定的注解直接或间接出现在这个元素上,返回值是一个长度为0的数组。这个方法和AnnotatedElement.getDeclaredAnnotation(Class)的区别是这个方法检测它的参数是否是一个repeatable annotation type(JLS 9.6),如果是,尝试通过“查看”容器注解(如果存在)来查找该类型的一个或多个注释。该方法的调用者可以自由修改返回的数组;它不会影响返回给其他调用者的数组。请注意,此方法返回的任何注释都是声明注解。
- 指定者:
getDeclaredAnnotationsByType在接口AnnotatedElement中- 类型参数:
T- 如果直接或间接存在,要查询并返回的注释类型- 参数:
annotationClass——注解类型对应的Class对象- 返回:
- 如果直接或间接出现在该元素上,则指定注解类型的所有该元素的注释,否则为长度为零的数组
- 抛出:
NullPointerException- 如果给定的注释类为 null
-
getAnnotations
返回此元素上的 present 注释。如果该元素上没有注解present,则返回值为长度为0的数组。该方法的调用者可以自由修改返回的数组;它不会影响返回给其他调用者的数组。请注意,此方法返回的任何注释都是声明注解。
- 指定者:
getAnnotations在接口AnnotatedElement中- 返回:
- 此元素上的注释
-