gpt4 book ai didi

绑定(bind)到类型扩展 T 的 Java 泛型类

转载 作者:行者123 更新时间:2023-12-03 19:34:38 24 4
gpt4 key购买 nike

我有一个通用测试类,它对它测试的集合类型(在我的例子中是堆栈)是通用的。

设泛型的名称为S (对于堆栈)。我有一个接口(interface) IStack<E>我想要求 S实现IStack<E> .当我宣布我的类(class)为 class Test<S extends IStack> { ... } ,我收到警告:

IStack is a raw type, References ... should be parameterized.

class Test<S<E> extends IStack<E>>导致语法错误

Syntax error on token '<', , expected

在 Java 中声明这种绑定(bind)的正确方法是什么?

最佳答案

我认为你需要两个通用参数,一个用于元素,另一个用于堆栈类型,即

class Test<E,S extends IStack<E>>

(或者 E extends SomeAncestorOfYourElements 如果需要的话)

关于绑定(bind)到类型扩展 T<E> 的 Java 泛型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53159824/

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