Porque meta-programação deve ser fácil.

Invocando Construtores

Invocando um construtor:
Class<T> clazz;
T t =
new Mirror().on(clazz).invoke().constructor().withoutArgs();
Você também pode passar um java.lang.reflect.Constructor:
Constructor<T> umConstrutor;
Class<T> clazz;
T t =
new Mirror().on(clazz).invoke().constructor(umConstrutor).withArgs(valor1, valor2);