gpt4 book ai didi

java - 嵌套泛型类型参数参数

转载 作者:搜寻专家 更新时间:2023-11-01 00:54:47 24 4
gpt4 key购买 nike

我有一个抽象类定义为:

public abstract class BaseClass<T extends FirstClass, U extends BaseAnother<? extends SecondClass>> {

我不想使用问号 (?),而是使用一些通用变量,例如 TU

我该怎么做?

最佳答案

它是 public abstract class BaseClass<X extends SecondClass, T extends FirstClass, U extends BaseAnother<X>> { , 不是吗?

(我添加了X extends SecondClass)

想想你将如何使用这个类型变量。在定义类时声明它的方式是将它放在new BaseClass< /* type parameters - here */> { ... }中。 .

另请注意,根据 JLS ,类型参数在类定义中的一个地方声明:

NormalClassDeclaration: ClassModifiersopt class Identifier TypeParametersopt Superopt Interfacesopt ClassBody

请参阅下面 8.1.2 中的示例。泛型类和类型参数章节:

interface ConvertibleTo<T> {
T convert();
}
class ReprChange<T extends ConvertibleTo<S>,
S extends ConvertibleTo<T>> {
T t;
void set(S s) { t = s.convert(); }
S get() { return t.convert(); }
}

关于java - 嵌套泛型类型参数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41746310/

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