首页常见问题正文

Java培训:使用getMethods()方法获取类中的全部方法

更新时间:2023-12-18 来源:黑马程序员 浏览量:

IT培训班

  要取得一个类中的全部方法,可以使用Class类中的getMethods()方法,该方法返回一个Method类的对象数组。如果想要进一步取得方法的具体信息,如方法的参数、抛出的异常声明等,就必须依靠Method类。Method类的常用方法如表12-3所示。

  表12-3 Method类的常用方法

1702863287265_Method类的常用方法.jpg

  接下来笔者通过一个简单的示例,来演示下如何使用getMethods()方法获取类中的全部方法:

import java.lang.reflect.Method;
import java.util.Arrays;

public class MethodExample {
    public static void main(String[] args) {
        // 获取指定类的Class对象
        Class<?> clazz = MyClass.class;

        // 获取类中的全部公共方法
        Method[] methods = clazz.getMethods();

        // 打印方法名
        System.out.println("类 " + clazz.getSimpleName() + " 中的全部公共方法:");
        for (Method method : methods) {
            System.out.println(method.getName());
        }
    }
}

class MyClass {
    public void method1() {
        // 方法1
    }

    public void method2(int param) {
        // 方法2
    }

    public String method3(String str) {
        // 方法3
        return str;
    }

    private void privateMethod() {
        // 私有方法
    }
}

  在这个例子中,MethodExample类使用了反射的getMethods()方法获取了MyClass类中的全部公共方法。然后通过遍历方法数组,打印了这些方法的名称。

  需要注意的是,getMethods()方法只能获取到公共(public)访问级别的方法,如果想要获取所有的方法,包括私有方法和受保护的方法,可以使用getDeclaredMethods()方法。

  本文版权归黑马程序员Java培训学院所有,欢迎转载,转载请注明作者出处。谢谢!

  作者:黑马程序员Java培训学院

  首发:https://java.itheima.com

分享到:
在线咨询 我要报名
和我们在线交谈!