¿Cómo instanciar una clase interior con reflejo en Java?

Intento crear una instancia de la clase interna definida en el siguiente código de Java:

 public class Mother {
      public class Child {
          public void doStuff() {
              // ...
          }
      }
 }

Cuando intento obtener una instancia de Child como esta

 Class<?> clazz= Class.forName("com.mycompany.Mother$Child");
 Child c = clazz.newInstance();

Me sale esta excepción:

 java.lang.InstantiationException: com.mycompany.Mother$Child
    at java.lang.Class.newInstance0(Class.java:340)
    at java.lang.Class.newInstance(Class.java:308)
    ...

Qué me estoy perdiendo ?

Respuestas a la pregunta(2)

Su respuesta a la pregunta