1.获取字节码对象
Class<?> aClass = Class.forName("_01_constructor.Person");
2.执行构造方法,通过调用公共的带一个参数的构造方法,来创建真实对象
Constructor<?> constructor = aClass.getConstructor(Integer.class);
(看在类中是什么构造器中的参数是什么类型Integer.class)
3.获取真实对象
constructor.newInstance(12);
1.通过调用私有的带俩个参数的构造方法,来创建真实类的对象
Constructor<?> declaredConstructor = aClass.getDeclaredConstructor(String.class, Long.class);
(看在类中是什么构造器中的参数是什么类型String.class Long.class)
2.因为该方法是私有的所以需要调用setAccessible(true);暴力获取
declaredConstructor.setAccessible(true);
3.获取真实对象newInstance
declaredConstructor.newInstance("小狼",12L);