Just to add to what Ulf has mentioned. 1) If there is no zero-arg constructor, then you can also get the required constructor using different flavours of method getConstructors() in java.lang.Class. 2) If you have a setter method for this type of variable in the holder class, you can further use reflection to execute the setter with the newly constructed object.
I would strongly second the suggestion by Ulf that there should be a common interface for referring to such dynamic objects. However, you can very well live without it.
Thanks. This is great. But, if I want to call a method in the obj (the class loaded using Class.forName), say: dbLogger.logStat(); I cannot do that at the compile time. The code wouldn't compile. Is there any way of calling a method within that class?