📜  Java中的类 getDeclaredMethods() 方法和示例(1)

📅  最后修改于: 2023-12-03 15:32:01.858000             🧑  作者: Mango

Java中的类 getDeclaredMethods() 方法和示例

getDeclaredMethods() 方法是 Java 中的一个非常重要的方法,可以返回指定类中声明的所有方法。该方法可以让程序员在运行时获取类中声明的所有方法,其中包括公共方法、保护方法、私有方法以及所有的静态方法。

语法
public Method[] getDeclaredMethods()

该方法不需要任何参数,它将返回一个 Java 数组,其中包含当前类声明的所有方法。返回值类型为 Method[]

示例

下面的代码演示了如何使用 getDeclaredMethods() 方法获取一个类中的方法列表:

import java.lang.reflect.Method;

public class MyClass {

    public void printMessage() {
        System.out.println("Hello World!");
    }
      
    public int sum(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        Method[] declaredMethods = MyClass.class.getDeclaredMethods();
        for (Method method : declaredMethods) {
            System.out.println("Method Name: " + method.getName());
            System.out.println("Return Type: " + method.getReturnType().getSimpleName());
            System.out.println("---------------------------------------------");
        }
    }
}

以上代码将输出以下结果:

Method Name: printMessage
Return Type: void
---------------------------------------------
Method Name: sum
Return Type: int
---------------------------------------------
Method Name: main
Return Type: void
---------------------------------------------

从上面的输出可以看出,getDeclaredMethods() 方法返回了 MyClass 中所有的方法,包括公共方法、保护方法、私有方法以及静态方法。

在上面的示例中,我们对获取到的每个方法都调用了 getName()getReturnType() 方法。getName() 方法返回该方法的名称,而 getReturnType() 方法则返回该方法的返回类型。

总结

getDeclaredMethods() 方法是 Java 反射 API 的一个重要方法。它允许程序员在运行时获取类声明的所有方法,并可以进一步获取方法的名称、参数列表和返回类型等信息。在许多情况下,我们可以使用 getDeclaredMethods() 方法来动态地调用一个类中的某个方法。该方法成为了程序员日常使用反射技术的必备方法之一。