MST

星途 面试题库

面试题:Java反射中如何获取类的所有方法

在Java反射机制里,假设你有一个类的全限定名,如何通过反射获取这个类的所有public方法?请用代码示例说明。
19.8万 热度难度
编程语言Java

知识考点

AI 面试

面试题答案

一键面试
import java.lang.reflect.Method;

public class ReflectionExample {
    public static void main(String[] args) {
        try {
            // 类的全限定名
            String className = "java.util.ArrayList";
            // 通过反射获取类对象
            Class<?> clazz = Class.forName(className);
            // 获取所有public方法
            Method[] methods = clazz.getMethods();
            for (Method method : methods) {
                System.out.println(method);
            }
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

在上述代码中:

  1. 定义了一个类的全限定名 className
  2. 使用 Class.forName(className) 通过反射获取类对象 clazz
  3. 调用 clazz.getMethods() 获取该类及其父类的所有public方法。
  4. 遍历并打印出所有的public方法。