I've never tried this with dynamically generated/compiled classes, but...
Try using Class.forName("com.example.YourClassName") to get a reference to the Class:
http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#forName(java.lang.String)
and then use Class.newInstance() to create an instance of the class:
http://docs.oracle.com/javase/7/docs/api/java/lang/Class.html#newInstance()
For this to work, com.example.YourClassName would have to be visible to your class loader.
For example:
Class clazz = Class.forName("com.example.YourClassName");
Object instance = clazz.newInstance();
The newInstance() call will only work if your class has a no-argument constructor.
If the YourClassName class's constructor requires arguments you must use a slightly different technique to call a specific constructor and pass values into it. For example, if you had a constructor like this:
YourClassName(Integer someInt, String someString)
Then you could do this to instantiate YourClassName via that constructor:
Class clazz = Class.forName("com.example.YourClassName");
Constructor constructor = clazz.getConstructor(Integer.class, String.class);
Object instance = constructor.newInstance(anInteger, "aString");
It would probably help if every instance of YourClassName implemented the same interface or extended the same base class so that you could cast the return value of newInstance() to that interface or base class. Then you would be able to call the interface or base class's methods on the instance. Otherwise, your only way to call useful methods on the Object would be to use reflection.