天天看点

02_3中方式的反射,通过Class.forName获得Class对象,通过类.class获得字节码对象,通过类实例.getClass()的方式获得Class对象



反射中加载类:

java中有一个class类用于代表某一个类的字节码

.class文件   

对应class

//1

加载类

// java中class代表一个类,但是到底代表哪个类要明确指出

//

其中clazz代表这个类的字节码文件

class

clazz1= class.forname("day3.reflect.person");

//2

clazz2 = person.class;//从内存中得到person对象的字节码

//3

clazz3 = new person().getclass();//通过类获得它的字节码文件

下面一段参数可以强制访问私有的构造方法。

class clazz = class.forname("day3.reflect.person");

constructor c =

clazz.getdeclaredconstructor(xx.class);

c.setaccessible(true);//强制访问私有的构造方法。

person p = (person)c.newinstance("dsa");