为什么我的类型引用不起作用?

时间:2017-05-28 14:06:18

标签: java generics reflection

这是我的代码。

首先,我有两个班级:

public abstract class AbstractTypeReference<T> {
    public Type type();
    public AbstractTypeReference() {
        Type superClass = getClass().getGenericSuperclass();
        type = ((ParameterizedType) superClass).getActualTypeArguments()[0];
    }
}

public class MyTypeReference<T> extends AbstractTypeReference<T> {
    public MyTypeReference() {
        super();
    }
}

然后,我运行以下代码:

MyTypeReference<String> ref = new MyTypeReference<String>();
System.out.println(ref.type.toString());

我希望得到java.lang.String作为输出,但得到T。 代码是从com.fasterxml.jackson.core.type复制的。但它运作良好。谁能告诉我有什么问题?为什么?

0 个答案:

没有答案