java - 泛型类型上限为泛型本身
问题描述
我正在创建一个通用接口及其类实现。这是一个不相交的集合。此类的泛型类型上限是泛型本身:
public class MyDisjointSet<K extends Pair<T, T>> implements IMyDisjointSet<K> {
}
和
public interface IMyDisjointSet<T> {}
但我得到编译错误Cannot resolve symbol T
。
当我将第二个参数添加到泛型类型列表时,它会编译:
public class MyDisjointSet<K extends Pair<T, T>, T> implements IMyDisjointSet<K>
为什么我们要把 T 放在这里?为什么不在班级名称之前?
解决方案
请试试
public class MyDisjointSet<K extends Pair<T, T>,T> implements IMyDisjointSet<K> {
推荐阅读
- c# - 我可以将 ContextMenuStrip 上的多个项目绑定到同一个函数吗?
- sql - 甲骨文今年即将生日
- python - 求aiohttp响应/连接关闭行为的解释
- dynamics-crm - Dynamics 365 – 实体 ER 图表 (Visio) 使用 SDK 中的元数据图表控制台
- typescript - 带有模块分辨率的打字稿的开玩笑设置
- php - 在php中显示数组和对象之间的差异
- javafx-8 - 为什么我不能在表中选择?我和其他人一样
- python - 如何创建一个只有一篇文章的页面?
- python - 如何过滤出今天日期在计算日期范围内的对象?
- python - 如何打印刮痕深度