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

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

接下来笔者通过一个简单的示例,来演示下如何使用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培训学院
毕业16个工作日,平均薪资13180元,就业率100%,广州黑马AI智能应用开发(Java)学科20250529班
2026-03-06毕业32个工作日,平均薪资11147元,就业率95%,广州黑马AI智能应用开发(Java)学科20250326班
2026-03-05黑马程序员2025全国就业数据发布:全学科平均就业率92.07%,AI开发类就业平均薪资达11869.67元。
2026-03-05黑马全国校区齐开班!场面太太太壮观了!
2026-03-03AI智能应用开发课程紧贴企业刚需,全程高效学习,直达中高级软件开发水平
2026-02-28风口正劲!黑马程序员又一AI智能应用开发班毕业当天100%就业!
2026-02-27