Instanciation d'une classe interne

J'ai une méthode utilitaire et quand pertinence logique est retiré, la méthode simplifiée devrait ressembler à ceci:

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;
}

Le problème, c'est que si clazz est un intérieur de classe comme Foo.Bar.classpuis le newInstance() méthode ne fonctionnera pas, même si Bar serait public, car elle permettra de jeter un java.lang.InstantiationException.

Est-il possible d'instancier dynamiquement les classes internes?

source d'informationauteur