Java使用二进制堆创建HeapPriorityQueue以实现PriorityQueue

Java使用二进制堆创建HeapPriorityQueue以实现PriorityQueue,java,arrays,string,priority-queue,binary-heap,Java,Arrays,String,Priority Queue,Binary Heap,我试图创建一个HeapPriorityQueue类,该类使用二进制堆实现PriorityQueue接口。不使用Java集合的PriorityQueue HeapPriorityQueue类将由以下驱动程序类运行: public class HeapPriorityQueueDriver { public static void main(String[] args) { PriorityQueue<Integer, String> queue = new H

我试图创建一个HeapPriorityQueue类,该类使用二进制堆实现PriorityQueue接口。不使用Java集合的PriorityQueue

HeapPriorityQueue类将由以下驱动程序类运行:

public class HeapPriorityQueueDriver {

    public static void main(String[] args) {
        PriorityQueue<Integer, String> queue = new HeapPriorityQueue<Integer, String>();
        queue.insert(0, "Zero");
        queue.insert(10, "Ten");
        queue.insert(1, "One");
        queue.insert(5, "Five");
        queue.insert(3, "Three");
        queue.insert(7, "Seven");
        queue.insert(9, "Nine");

        while(!queue.isEmpty()) {
            System.out.println(queue.extractMax());
        } // end while
    } // end main
}
有人能帮我解决这个问题吗?

公共类HEAPPERIORITYQUEUE{
 public class HeapPriorityQueue<Integer, String> { 
不扩展/实现PriorityQueue。这就是为什么它在

PriorityQueue<Integer, String> queue = new HeapPriorityQueue<Integer, String>();
PriorityQueue queue=new HeapPriorityQueue();

要么扩展/实现priorityQueue,要么将驱动程序类中使用的类型更改为HeapPriorityQueue。

我真的不知道如何理解java继承,应该更清楚。记住,如果实现接口,需要实现接口中定义的所有方法。公共类yourClass实现您RINFERFACE{/*…*/}
 public class HeapPriorityQueue<Integer, String> { 
PriorityQueue<Integer, String> queue = new HeapPriorityQueue<Integer, String>();