Tengo un método de utilidad y cuando la lógica irrelevante se retira de él, el método simplificado se vería así:Instantiating una clase interna
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;
}
El problema es, que si clazz
es una clase interna tal como Foo.Bar.class
, entonces el método newInstance()
no funcionará aunque Bar
sea público, ya que lanzará un java.lang.InstantiationException
.
¿Hay alguna manera de crear instancias dinámicas de las clases internas?
usted todavía tiene que comprobar si la clase interna no es estático ... – Corin