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 pre to return an element goes here ... } public boolean offer(T element) { ... your pre to accept a submission offer goes here ... } ... etc ...}更少使用的替代方法是构造一个实现的匿名类
Queue。您可能不想这样做,但是为了覆盖所有基础,将其列为选项。
new Queue<Tree>() { public Tree element() { ... }; public boolean offer(Tree element) { ... }; ...};


