通过反射创建类的实例,包括内部类实例的创建
该方式创建的实例比较简单,但这个newInstance()在新版本中已经失效了,且这个方法针对内部类创建实例时会失败报异常。
public static Object getBean(Class clazz) throws Exception {
Object obj = clazz.newInstance();
return obj;
}
该方式创建实例时需要先获取类的构造器,再用构造器进行实例创建,setAccessible(true)的设置是打开访问受限的构造器,
public static Object getBean(Class clazz) throws Exception {
Constructor constructor = clazz.getDeclaredConstructor();
constructor.setAccessible(true);
Object obj= constructor.newInstance();
return obj;
}