Stack
不是Vector
那么为什么Stack类的扩展(有关系)在JDK Vector类,堆栈想将工作与push()
和pop()
操作,但因为它扩展矢量我能够做的add()
和remove()
操作在堆栈。
我认为应该扩展Vector类,而Stack类应该使用Vector类作为组合。
双方Stack
并Vector
附带了Java的第一个版本。由于当时的互联网狂热,Java提前赶到了市场。
与那些最早的Java版本捆绑在一起的某些类,例如日期时间类,并不是经过深思熟虑的。他们没有受到同行评审和公众审查,因为后来的图书馆,例如通过JAva社区流程以及开源项目和行业联盟项目制作的一些图书馆。
在Java集合框架取代了这两个类。同样,java.time框架取代了旧的日期时间类,例如java.util.Date
/ .Calendar
。旧类保留在Java中,以便与现有应用程序向后兼容,但不应在新代码中使用。
在Stack
类文档讲述了这一点,清楚地说,你应该改为使用的实现Deque
接口。