反射机制
1. 为什么需要获得Class对象?
程序在运行时能够动态的获得类的相关信息的机制,叫做反射机制
正着走:先拿到类的信息,在使用这个类
反着走:先使用这个类,在拿到类的信息
类的所有的信息都在Class对象中
Class类是反射机制中的核心类
如何拿到JVM内存中的class文件的数据?
//1.获得所有可见的构造方法
Constructor[] cons= c.getConstructors();
//2.获得所有已经声明的构造方法
Constructor[] cons2= c.getDeclaredConstructors();
//3.获得指定的可见的某一个构造方法
Constructor cc = c.getConstructor(int.class,String.class,int.class);
//4.从声明的方法中获得指定的构造方法
Constructor cc2 = c.getDeclaredConstructor(int.class);
通过构造方法来实例化对象
Object obj = cc.newInstance(构造方法的参数);
访问私有构造方法
cc2.setAccessible(true);
不定项参数的方法
//一个方法中只能有一个不定项参数
//不定项参数必须是最后一个参数
public static void test(int a,int…t){
}