Допустим у нас есть базовый класс Base, и наследники: A, B, C, D. С каждым из наследников связан свой String. Задача в том, чтобы создавать экземпляры наследников согласно String.
HashMap<String , Class<? extends Base>> hm = new HashMap<String , Class<? extends Base>>() ;
hm.put("one", A.class);
hm.put("two", B.class);
hm.put("three", C.class);
hm.put("four", D.class);
Class <? extends Base> val = hm.get("one");
Base a = val.newInstance();
val = hm.get("two");
Base b = val.newInstance();
...
В жабе слабоват и не знаю как правильно такую штуку реализовать.