为什么Hashtable不是Java Collection框架的一部分?

时间:2013-05-19 06:13:40

标签: java collections map hashtable

我通常在非多线程环境中工作,所以通常使用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的一部分?

2 个答案:

答案 0 :(得分:2)

API document of Hashtable

的最后一段
  

从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