Java:实现有界泛型接口时遇到问题

Java: Having trouble implementing bounded generics interface

我搜索了很多问题和其他 Internet 文章,但似乎找不到适合我的具体情况的解决方案,而 none 的其他解决方案对我有用。

我这里有这个界面:

public interface PriorityQueueInterface<T extends Comparable<? super T>>

我需要做一个优先级队列class来实现这个接口,所以我这样打出来的:

public class ArrayPriorityQueue<T> implements PriorityQueueInterface<Comparable<? super T>>

但是,它没有编译,因为我得到这个错误:

type argument Comparable is not within bounds of type-variable T#2 where T#1,T#2 are type-variables: T#1 extends Object declared in class ArrayPriorityQueue T#2 extends Comparable declared in interface PriorityQueueInterface

我尝试了所有类型的组合,但似乎没有任何效果。如何编写 class 声明以便编译?

看来您想要的是声明具有相同边界的类型变量,然后将其作为参数传递给接口:

public class ArrayPriorityQueue<T extends Comparable<? super T>>
    implements PriorityQueueInterface<T> {...}