Crea una instancia dentro de Abstract Class usando Reflection

¿Es posible crear una instancia de una clase derivada en una clase ancestral abstracta usando la reflexión? Digamos:

abstract class Base {

public Base createInstance(){
  //using reflection
    Class<?> c = this.getClass();
    Constructor<?> ctor = c.getConstructor();
    return ((Base) ctor.newInstance());
}

}//end Base

class Derived extends Base {

 main(){

new Derived().createInstance()

 }

}

Respuestas a la pregunta(3)

Su respuesta a la pregunta