如果这是重复的,我们深表歉意。
有什么方法可以确定一个类是什么泛型类型?
即我想知道T
是什么....
public void doSomething(SomeClass<T> thing)
{
Class<T> t = ???;
}
谢谢,p。
最佳答案
Java 中没有。您将必须接受参数 Class<T>
调用者也必须提供。 (如果愿意,您可以在构造函数中执行此操作,这样类引用将可用于所有类方法。)这是一个常用的 hack 来确定什么 T
指在运行时,由于 Java 实现泛型的方式,它在其他情况下不可用。
关于java - 以编程方式确定泛型类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4444877/