hashtable被弃用了

 

Hashtable的做者:
在这里插入图片描述
HashMap的做者:
在这里插入图片描述
Hash Map的做者比Hashtable的做者多了著名顶顶的并发大神Doug Lea。他写了util.concurrent包。著有并发编程圣经Concurrent Programming in Java: Design Principles and Patterns 一书。他的我的主页: http://g.oswego.edu/java

Josh Bloch 为领导了众多Java平台特性的设计和实现,其中包括Java Collection框架、java.math包以及assert机制。著有 Effective Java 一书。编程

Arthur van Hoff最先任职于硅谷的Sun Microsystems公司,从事Java程序语言的早期开发工做。设计并实现了JDK 1.0的许多方面,包括Java编译器、Java调试器、许多标准Java类以及HotJava浏览器。随后创立了多家成功的企业,其中包括Marimba(1999年IPO)、Strangeberry(后被TiVo收购)、ZING(后被Dell收购)和Ellerdale(后被Flipboard收购)。Java命名来源有这么一种说法,来源于开发人员名字的组合:James Gosling、Arthur Van Hoff和Andy Bechtolsheim首字母的缩写。浏览器

Neal Gafter是Java SE 4和5语言加强的主要设计者和实现者,他的Java闭包实现赢得了OpenJDK创新者挑战赛的大奖。他也在继续参与SE 7和8的语言发展。以前Neal在为Google的在线日历工做,也曾经是C++标准委员会的一员,并曾在Sun微系统公司,MicroTec研究院和德州仪器领导开发C和C++编译器。现在Neal在微软开发.NET平台编程语言。Neal是《Java Puzzlers:Traps, Pitfalls and Corner Cases》(Addison Wesley,2005)一书的合做者。他拥有罗彻斯特大学计算机科学的博士学位。安全

可见这些做者都是java乃至整个it领域大名鼎鼎的人物。也只有这些大师级人物才能写出HashMap这么大道至简的数据类型了。markdown

线程安全形成的效率低下

虽然Hashtable比HashMap出现的早一些,可是如今Hashtable基本上已经被弃用了。而HashMap已经成为应用最为普遍的一种数据类型了。形成这样的缘由一方面是由于Hashtable是线程安全的,效率比较低。另外一方面多是由于Hashtable没有遵循驼峰命名法吧。。。闭包

Hashtable继承了被弃用的父类

HashMap是继承自AbstractMap类,而HashTable是继承自Dictionary类。
Dictionary类是一个已经被废弃的类(见其源码中的注释)。父类都被废弃,天然而然也没人用它的子类Hashtable了。并发

具体分析请看:
https://blog.csdn.net/wangxing233/article/details/79452946框架

相关文章
相关标签/搜索