Como compilar e instanciar programaticamente uma classe Java? [duplicado]

Esta pergunta já tem uma resposta aqui:

Como você compila e carrega dinamicamente classes java externas? [duplicado] 2 respostas

Eu tenho o nome da classe armazenado em um arquivo de propriedades. Eu sei que o armazenamento de classes implementará IDynamicLoad. Como instanciar a classe dinamicamente?

Agora eu tenho

     Properties foo = new Properties();
    foo.load(new FileInputStream(new File("ClassName.properties")));
    String class_name = foo.getProperty("class","DefaultClass");
    //IDynamicLoad newClass = Class.forName(class_name).newInstance();

O newInstance apenas carrega arquivos .class compilados? Como carrego uma classe Java que não é compilada?

questionAnswers(3)

yourAnswerToTheQuestion