实例化具有反射

时间:2017-09-08 07:13:21

标签: java generics

我尝试创建类似对象映射器的东西。为此,我需要在运行时实例化类。对于'普通'类来说这很容易,但是,我也有类似终端的泛型类,我需要在运行时实例化它们:

public class Terminal<T extends ConductingEquipment> extends ACDCTerminal {
  private T conductingEquipment;
  ...
}

当我阅读我尝试映射到对象的文档时,我知道T的类/类型。我尝试在运行时实现类似下面的内容,其中ACLineSegment只是一个示例,可能是38个班级中的一个(目前):

Terminal<ACLineSegment> terminal = new Terminal<>();
terminal.setConductingEquipment(new ACLineSegment());

是否有可能在不知道T应事先ACLineSegment的情况下做反射类似的事情?目前我只能在没有类型参数的情况下实例化终端:

terminalClass.newInstance();

更新 要指定我的帖子和this one之间的差异:是否可以使用反射实例化一个通用类,而不使用以前实现所有可能的类。 (以及如何。)

0 个答案:

没有答案