在运行时获取泛型类

问题:

我该如何实现?

public class GenericClass<T>
{
    public Type getMyType()
    {
        //How do I return the type of T?
    }
}

迄今为止,我尝试过的一切总是返回类型Object而不是使用的特定类型。

回答:

正如其他人所提到的,只有在某些情况下才可能通过反思。
如果您真的需要该类型,这是通常的(类型安全)解决方法模式:

public class GenericClass<T> {

     private final Class<T> type;

     public GenericClass(Class<T> type) {
          this.type = type;
     }

     public Class<T> getMyType() {
         return this.type;
     }
}

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Get generic type of class at runtime

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

87 − = 83