我有一个实用方法,当从中删除不相关的逻辑时,简化的方法如下所示:
public static <A extends Foo> List<A> getFooList(Class<A> clazz) {
List<A> returnValue = new ArrayList<A>();
for(int i=0; i < 5; i++) {
A object = clazz.newInstance();
returnValue.add(object);
}
return returnValue;
}
问题是,如果clazz
是一个内部类,例如Foo.Bar.class
,那么newInstance()
即使是公共的,该方法也不起作用Bar
,因为它会抛出一个java.lang.InstantiationException
.
有没有办法动态实例化内部类?