gpt4 book ai didi

java - 给定 ParameterizedType 和 Type,如何重新参数化第一个类型?

转载 作者:行者123 更新时间:2023-12-01 14:59:55 25 4
gpt4 key购买 nike

假设我有一个Type a这是 java.util.TreeSet<T> ,已通过泛型参数化,由于类型删除,我们看不到。我们还有一个Type b ,这是一个“java.lang.Integer”。如何构建 ParameterizedType那是 java.util.TreeSet<java.lang.Integer>

或者,如果更容易的话,我们可以有一个原始的 java.util.TreeSet要使用的类型。

最佳答案

像这样实现ParameterizedType:

public class MyParamType implements ParameterizedType {
private Type rawType;
private List<Type> paramTypes;

public MyParamType( Type raw ) {
this.rawType = raw;
}

public void addParamType( Type t ) {
paramTypes.add(t);
}

//for the interface methods, just return what you stored before
}

类型执行或多或少相同的操作。如果您需要更多关于 Type 应该为非泛型类型实际实现什么(它只是一个标记接口(interface))的提示,请查看 JDK 源代码或查看调试器中的具体实例。

关于java - 给定 ParameterizedType 和 Type,如何重新参数化第一个类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13816161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com