HashTable继承自Dictionary类吗
时间: 2024-05-17 21:17:51 浏览: 111
是的,HashTable类继承自Dictionary类。Dictionary类是一个抽象类,提供了键值对映射的基本操作,而HashTable类是Dictionary类的一个实现。Dictionary类中包含了一些抽象方法,如get、put等,HashTable类重写了这些方法来实现具体的功能。但是需要注意的是,Hashtable类在JDK1.2版本之后已经被HashMap类替代,因此不推荐使用Hashtable类。
相关问题
hashmap 和 hashtable继承
HashMap 和 Hashtable 都实现了 Map 接口,但它们的继承关系不同。HashMap 继承自 AbstractMap,而 Hashtable 继承自 Dictionary 类。
Dictionary 类是一个抽象类,已经被淘汰,不建议使用。它提供了一个键值对的映射,类似于 Map 接口。Hashtable 继承自 Dictionary 类,因此也被淘汰,不建议使用。
HashMap 继承自 AbstractMap,AbstractMap 实现了 Map 接口中的大部分方法,因此 HashMap 只需要实现少量方法即可。HashMap 是非线程安全的,不保证元素的顺序。
java里的Dictionary和HashTable
Dictionary和HashTable都是Java中的键值对存储结构,它们都可以用于存储任意对象,其中key和value都是Object类型。
Dictionary是一个抽象类,它被Hashtable所继承。所以,Hashtable和Dictionary有一些相似的方法,例如get()和put()。Dictionary类中的方法都是线程安全的,但它已经过时了,应该使用Map接口的实现类来代替。
HashTable是一个具体类,它实现了Map接口。和Dictionary类似,HashTable是线程安全的,但是效率较低,因为它对于所有的方法都加了同步锁。另外,HashTable不允许null值或null键。
在实际开发中,建议使用HashMap代替Hashtable,因为HashMap的效率更高,并且允许null值和null键。
阅读全文