1.但该类有无参构造,并且不用进行初始化赋值的情况下:
Class<?> aClass = Class.forName("com.javasm.practise.Student");
Object o1 = aClass.newInstance();*感觉用的不是很多啊,一般情况下都要从外部传过来一个类的地址,咱或许看不到是否有无参构造,并且很多时候还要立马初始化的吧?
2.没有无参构造,或者想直接用有参构造初始化一下
//步骤1 取得.class文件
Class<?> aClass = Class.forName("com.java.practise.Student");
//步骤2 取得当前文件的带参数的构造函数
Constructor<?> declaredConstructor1 = aClass.getDeclaredConstructor(Car.class,String.class);
//步骤3 实例化 此处应注意用构造函数进行实例化而不是.class文件,因为.class文件进行实例只是利用无参构造。并且需要在此处进行初始化赋值,而不是在前一步初始化
Object newInstance = declaredConstructor1.newInstance(o1, "小明");
版权声明:本文为Luckyc_c原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。