Я хочу создать экземпляры классов Java (которые расширяют суперкласс) во время выполнения.
Вот несколько примеров классов:
class Super {
}
class FirstSub extends Super {
}
class SecondSub extends Super {
}
Я знаю имя класса как строку:
String name = "SubClassName";
Это был мой первый подход:
Super foo;
if (FirstSub.class.getSimplename().equals(name)) {
foo = new FirstSub();
}
if (SecondSub.class.getSimplename().equals(name)) {
foo = new SecondSub();
}
Как мне получить экземпляр одного из "подклассов" более сложным способом?
РЕДАКТИРОВАТЬ: Дополнительно я хочу привести foo
к SubClassName
.