展开全部
获取构造函数使32313133353236313431303231363533e59b9ee7ad9431333365663432用的是Class类对象,而不是你没反射之前的Object对象,getConstructors 是Class类的方法
代码修改一下,改成下面的就不报错了import java.lang.reflect.Constructor;
public class fanshe2 {
public static void main(String[] args) {
Object clazz = new java.util.ArrayList();
System.out.println(clazz.getClass());
Constructor[] constructors = clazz.getClass().getConstructors();
for (Constructor constructor : constructors) {
System.out.println(constructor);
}
}
}//不写一行,就写出每一步的操作
import java.lang.reflect.Constructor;
public class fanshe2 {
public static void main(String[] args) {
Object obj= new java.util.ArrayList(); //获取一个类的实例
Class clazz = obj.getClass(); //根据实例拿到Class对象
clazz.getConstructors(); //用Class对象调用反射
System.out.println(clazz);
Constructor[] constructors = clazz.getConstructors();
for (Constructor constructor : constructors) {
System.out.println(constructor);
}
}
}