为什么Stack在JDK中扩展Vector?
Stack
不是Vector
那么为什么Stack类正在扩展(是一种关系)在JDK中的Vector类,Stack假设使用push()
和pop()
操作,但因为它扩展了Vector我能够做add()
并remove()
堆栈上的操作。
我认为宁可扩展Vector类,Stack类应该使用Vector类作为组合。
过时的课程
Stack
和Vector
都包含在Java的第一个版本中。 由于当时的互联网狂潮,Java被赶到了市场之前。
与那些最早版本的Java捆绑在一起的一些类,例如日期时间类,没有经过深思熟虑。 他们没有受到同行评审和公众监督,因为后来的图书馆,例如通过JAva社区流程以及开源项目和行业联盟项目产生的一些图书馆。
Java Collections框架
Java Collections框架取代了这两个类。 类似地, java.time框架取代了旧的日期时间类,例如java.util.Date
/ .Calendar
。 旧类保留在Java中以便与现有应用程序向后兼容,但不应在新代码中使用。
Stack
类文档告诉你这一点,清楚地说你应该使用Deque
接口的实现。
- Java整数类型原语是否在转换类型的MAX_INT处“加盖”?
- Java:如何防止EntityResolver中的’systemId’#resolveEntity(String publicId,String systemId)从绝对化到当前工作目录
- 通过附带excel文件的java应用程序发送电子邮件 – 无法正常工作
- 如何从java中的字节数组中编写WAV文件?
- 如何使用JProfiler在java中查找内存泄漏?
- 如何反编译到java文件intellij的想法
- 如何有效地使用javax.mail API发送批量邮件? 我们可以使用重用经过身份validation的会话来提高速度吗?
- 如何使用MyBatis / Spring实现批处理操作?
- 获取javax.net.ssl.SSLException:收到致命警报:使用Jsoup抓取数据时的protocol_version