请问老师,视频中说抽象类和接口才能获取泛型的真实类型吗
来源:4-2 网络库的封装,泛型参数边界2

慕九州6385248
2020-02-24
下面这段代码打印的是 String,为什么也能获取到泛型的真正类型?
class SupperClass<T>{}
class SubClass1 extends SupperClass<String> {
public List<Integer> getValue(){
return null;
}
}
public class demo {
public static void main(String[] args) {
ParameterizedType superType = (ParameterizedType) SubClass1.class.getGenericSuperclass();
for (Type type : superType.getActualTypeArguments()) {
System.out.println(type);
}
}
}
写回答
1回答
-
对于class 类,class user extends people<JsonObject>如果是这种显性标记的泛型类型运行时是可以获取到的。固定标记在类上的。
视频课中演示的是new User<JsonObject>
这种情况下是获取不到的。new 出来的User类并没有明确显性标记的泛型类型。是动态标记的。
012020-02-25
相似问题