Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从现有ParameteredType创建另一个类的参数化类型_Java_Generics_Reflection - Fatal编程技术网

Java 从现有ParameteredType创建另一个类的参数化类型

Java 从现有ParameteredType创建另一个类的参数化类型,java,generics,reflection,Java,Generics,Reflection,考虑一下这个类结构 class Class1<T> { Class2<T> field1; } Class1类{ 2类字段1; } 如果我有一个通过反射表示Class1的ParameterizedType实例,如何获取/创建一个表示Class2的ParameterizedType实例?在当前状态下,反射API允许(有限)检查泛型类型信息。由于不能利用新构造的参数化类型,因此首先允许其构造没有什么意义 如果您正在构建一个API接受代码>参数化类型< /代码> s

考虑一下这个类结构

class Class1<T> {
    Class2<T> field1;
}
Class1类{
2类字段1;
}

如果我有一个通过反射表示
Class1
ParameterizedType
实例,如何获取/创建一个表示
Class2
ParameterizedType
实例?

在当前状态下,反射API允许(有限)检查泛型类型信息。由于不能利用新构造的
参数化类型
,因此首先允许其构造没有什么意义


如果您正在构建一个API接受代码>参数化类型< /代码> s,并且需要用户自己构建,则可以考虑切换到番石榴,而

<代码>参数化类型是一个接口。只需编写一个实现它的类(或从Internet复制一些现有的实现),使其方法返回您想要的结果