Ern*_*ill 5

(1)java.util.Stack是Java 1.0的遗留类.它早于Collections框架多年,坦率地说是许多方面可怕设计的一个例子.事情应该是这样的.主要问题是Stack扩展Vector,并且由于Java中的所有继承都是公共继承,因此所有方法Vector都可用Stack.因此,您可以检查堆栈中的任何位置,从中间添加和删除元素,清除它,或执行任何不应该成为堆栈抽象的其他内容而不进行强制转换.与使用QueueDeque接口相比,通过它只能使用适合堆栈的方法.

(2)确实没有普通的普通队列,但LinkedList实现了Queue而没有任何特殊的语义,所以也许这就是你想要的.