Javareflect 简明教程

java.lang.reflect - Method Class

Introduction

java.lang.reflect.Method 类提供有关类或接口上单个方法的信息并可访问该方法。反射方法可以是类方法或实例方法(包括抽象方法)。java.lang.reflect.Method 允许在将实际参数与基础方法的形式参数匹配时进行扩展转换,但如果发生缩小转换,则它会引发 IllegalArgumentException。

Class declaration

以下是对 java.lang.reflect.Method 类的声明:

public final class Method<T>
   extends AccessibleObject
      implements GenericDeclaration, Member

Class methods

Sr.No.

Method & Description

1

boolean equals(Object obj) 将此 Method 与指定对象比较。

2

<T extends Annotation> T getAnnotation(Class<T> annotationClass) 如果存在这种注解,则返回此元素对指定类型的注解,否则返回 null。

3

Annotation[] getDeclaredAnnotations() 返回此元素上直接存在的全部注解。

4

Class<T> getDeclaringClass() 返回表示此 Method 对象表示的方法的类所在的 Class 对象。

5

Object getDefaultValue() 返回此 Method 实例表示的注解成员的默认值。

6

Class<?>[] getExceptionTypes() 返回一个 Class 对象数组,表示此 Constructor 对象表示的基础构造函数声明要抛出的异常的类型。

7

Type[] getGenericExceptionTypes() 返回一个 Type 对象数组,表示此 Constructor 对象声明要抛出的例外。

8

Type[] getGenericParameterTypes() 返回一个 Type 对象数组,其中代表此 Constructor 对象表示的方法的正式参数类型,按声明顺序排列。

9

Type getGenericReturnType() 返回一个 Type 对象,其中代表此 Method 对象表示的方法的正式返回类型。

10

int getModifiers() 作为整数,返回 Method 对象表示的方法的 Java 语言修饰符。

11

String getName() 作为字符串,返回此方法的名称。

12

Annotation[][] getParameterAnnotations() 返回一个数组数组,其中代表 Method 对象表示的方法的正式参数的注释,按声明顺序排列。

13

Class<?>[] getParameterTypes() 返回一个 Class 对象数组,其中代表此 Method 对象表示的构造函数的正式参数类型,按声明顺序排列。

14

Class<?> getReturnType() 返回一个 Class 对象,其中代表此 Method 对象表示的方法的正式返回类型。

15

int hashCode() 返回此 Constructor 的哈希码。

16

Object invoke(Object obj, Object…​ args) 对指定的具有指定参数的对象调用此 Method 对象表示的底层方法。

17

boolean isBridge() 如果此方法是桥接方法,则返回 true;否则返回 false。

18

boolean isSynthetic() 如果此方法是合成方法,则返回 true;否则返回 false。

19

boolean isVarArgs() 如果声明此方法用于获取可变数量的参数,则返回 true;否则返回 false。

20

String toGenericString() 返回描述此方法(包括类型参数)的字符串。

21

String toString() 返回描述此方法的字符串。

Methods inherited

此类从以下类中继承方法:

  1. java.lang.reflect.AccessibleObject

  2. java.lang.Object