考虑这个类结构。
class Class1<T> {
Class2<T> field1;
}
如果我通过反射有ParameterizedType
实例代表Class1<String>
,我该如何获取/创建代表ParameterizedType
的{{1}}实例?
答案 0 :(得分:1)
ParameterizedType
是一个界面。只需编写一个实现它的类(或从Internet复制一些现有的实现),以便它的方法返回你想要的。
答案 1 :(得分:0)
在当前状态下,反射API允许(有限的)检查泛型类型信息。由于无法利用新构建的ParameterizedType
,因此首先允许其构建是没有意义的。
如果您正在构建一个接受ParameterizedType
并且需要用户构建自己的API,那么您可以考虑转而使用番石榴TypeToken
-Class。