如何在Java中实例化Queue对象?
当我尝试:
Queue<Integer> q = new Queue<Integer>();
编译器给我一个错误。有什么帮助吗?
另外,如果要初始化队列,是否必须实现队列的方法?
回答:
A Queue
是一个接口,这意味着您不能Queue
直接构造一个。
最好的办法是建立关闭一类已经实现了Queue
接口,像下面的一个:AbstractQueue
,ArrayBlockingQueue
,ArrayDeque
,ConcurrentLinkedQueue
,DelayQueue
,LinkedBlockingQueue
,LinkedList
,PriorityBlockingQueue
,PriorityQueue
,或SynchronousQueue
。
一种替代方法是编写您自己的类,该类实现必要的Queue接口。除非在极少数情况下您希望在为程序的其余部分提供的同时做一些特别的事情,否则不需要它Queue
。
public class MyQueue<T extends Tree> implements Queue<T> { public T element() {
... your code to return an element goes here ...
}
public boolean offer(T element) {
... your code to accept a submission offer goes here ...
}
... etc ...
}
更少使用的替代方法是构造一个实现的匿名类Queue
。您可能不想这样做,但是为了覆盖所有基础,将其列为选项。
new Queue<Tree>() { public Tree element() {
...
};
public boolean offer(Tree element) {
...
};
...
};
以上是 如何在Java中实例化Queue对象? 的全部内容, 来源链接: utcz.com/qa/410662.html