我想要限制类型T,它是在泛型类</t>中实现Comparable <t>接口的类

时间:2011-10-27 05:55:06

标签: java

我在Java中定义了一个泛型类A<T>,但我希望限制类型T,使其成为实现Comparable<T>接口的类。我该怎么办?

4 个答案:

答案 0 :(得分:7)

我想你只是想:

class A<T extends Comparable<T>>
{
}

或者可能:

class A<T extends Comparable<? super T>>
{
}

后者稍微灵活一些 - 它允许以下内容:

class Foo implements Comparable<Object>
{
}

A<Foo> a = new A<Foo>();

如果您只是希望A能够比较T类型的值,那就没关系。

答案 1 :(得分:1)

public class A<T extends Comparable<? super T>>{
...

}

这允许您使用实现类似

的类的子类

答案 2 :(得分:0)

您可以在T上加上上限:

public class A<T extends Comparable<T>> {
   //...
}

答案 3 :(得分:0)

Class A <T implements ComparableInterface>
相关问题