这可能是一个基本问题,但我可以这样做吗:
Class myClass = Class.forName("Integer");
SomethingSimple<myClass> obj;
SomethingSimple 是一个非常简单的通用类:
class SomethingSimple<T>
{
T value;
SomethingSimple() {}
public void setT(T val)
{
value = val;
}
public T getT()
{
return value;
}
}
显然,上面的代码是不正确的,因为myClass是Class类型的对象,需要有一个类。问题是如何才能做到这一点。我阅读了有关泛型反射的其他主题,但它们关注的是泛型类如何知道类型。
最佳答案
不,你不能那样做。重点是什么?泛型为您提供编译时类型检查,如果该类直到运行时才为人所知,您将一无所获。
关于Java 泛型与反射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5756081/