我们可以在运行时从泛型类型实例化一个对象吗?

时间:2015-08-13 10:07:50

标签: java object generics runtime

我们可以在运行时从泛型类型实例化一个对象吗? 我上课了:

MyClass<T> implements SomeInterface<T> {
..
public T someMethod() {
return <object of Type T> // Desired!!!
}
..
}

或者假设我从其他需要泛型类型实例的类中调用此方法:

TestMayClass {
DesiredClass t = new MyClass<DesiredClass>().someMethod();
// Can I have generics type at run time and construct object from it then return to calling method? Manipulating generic type??
}

:这段代码没有编译,它只是虚构的代码,有类似的东西。

1 个答案:

答案 0 :(得分:2)

不,你不能用Java做到这一点。即使我们把type erasure放在一边,编译器怎么知道调用的构造函数存在?

Java中最接近您需求的是reflection

相关问题