【发布时间】:2014-11-12 01:26:00
【问题描述】:
我刚刚看到difference between a HashMap and HashTable。除了明显的同步和非同步区别外,我注意到HashTable 扩展了Dictionary 类,而HashMap 实现了Map。他们都存储<Key, Value> 对,所以有什么区别。我尝试用谷歌搜索,发现关于 SO(1、2 和 3)的问题很少。除了Dictionary 类已过时,我没有发现任何令人满意的东西。你这两个班有区别吗?如果不是,为什么字典类现在已经过时了?
【问题讨论】:
-
不要认为它是重复的,不。这是在查询 Dictionary 和 Map 之间的区别,这是一个有点不同的问题。那里的一些答案涉及存在差异的事实,但没有一个涉及字典为什么过时的重要问题。
-
@RoddyoftheFrozenPeas 不是真的,不。 HashMap 和 Hashtable 之间差异问题的答案主要与这些类的实现有关。这个问题,通过关注抽象的祖先,更多地询问接口的差异。
-
值得注意的是,由于历史原因,Java 有很多冗余的类和接口。当一个较旧的类/界面似乎复制了一个较新的类/界面时,不要花太多时间想知道为什么,因为通常创建较新的东西是为了在一些宏伟的计划中更好地组合在一起。在功能上通常差别很小。
标签: java dictionary