在Java中是否有使用接口绑定泛型类型的方法



我试图创建一个通用列表,该列表使用该类型的.compareTo()方法对输入的项目进行排序。然而,我在第一行就遇到了一个问题。由于类型必须是一个implements Comparable<T>,有什么方法来强制?我想语法应该是:

public class GenList<T implements Comparable<T>>{
//Class body.
}

行不通。有什么建议吗?提前感谢!

我知道这有点违反直觉,但是对于这个你写extends而不是implements:

public class GenList<T extends Comparable<T>>{
//Class body.
}

(请注意,我还将?更改为T,我认为这就是您的意思。引用的类型可以是GenList<?>,也可以是GenList<? extends Comparable<String>>,或者其他类型,但是将类本身声明为接受通配符参数是没有意义的。

你是说像

public class GenList<T extends Comparable<T>>{
//Class body.
}

最新更新