我通常在非多线程环境中工作,所以通常使用HashMap而不是Hashtable。我知道两者之间的区别我也知道Hashtbale是在引入Java Collection框架之前引入的。 如果我们通过Hashtable源代码,我们可以找到
public class Hashtable<K,V>
extends Dictionary<K,V>
implements Map<K,V>, Cloneable, java.io.Serializable {...
我的观点是Hashtable是在Java Collection框架之前引入的(在Map之前引入的方式)。由于Hashtable实现了Map,Hashtable实现已被修改。我的问题是为什么Hashtable不是Map Collection的Java Collection Framework的一部分?
答案 0 :(得分:2)
从Java 2平台v1.2开始,这个类被改进以实现Map接口,使其成为Java Collections Framework的成员。
答案 1 :(得分:2)
Hashtable是作为Java 1.0的一部分引入的,它没有使用Map。 在1.2版本中,它被更改为实现Map,因此成为了Collections框架的一部分。 http://docs.oracle.com/javase/7/docs/api/java/util/Hashtable.html