HashTable的故事
很早之前,在講HashMap的時(shí)候,我們就說過hash是散列,把...弄碎的意思。hashtable中的hash也是這個(gè)意思,而table呢,是指數(shù)據(jù)表格,也就是說hashtable的本意是指,一份被數(shù)據(jù)被打散,分散在各處的數(shù)據(jù)表格。
HashTable,作為jdk中,極早提供的容器類(jdk1.0),同時(shí)是支持?jǐn)?shù)據(jù)并發(fā)的類,其在項(xiàng)目中的使用卻并不是很廣泛。在我所經(jīng)歷的項(xiàng)目中,開發(fā)人員往往喜歡使用hashMap然后再通過鎖,創(chuàng)造出線程安全的環(huán)境。即使是后來推出concurrentHashMap,其使用的地方也并沒有特別廣泛。究其原因,我覺得是由于開發(fā)人員對(duì)于其他hash容器并不熟悉。更愿意使用已有的較為熟悉的hash容器,即使他們?cè)诖颂幍膽?yīng)用比較費(fèi)事。
好了,廢話不多說,我們直接開始進(jìn)入正題吧:
hashTable繼承自dic類,同時(shí)實(shí)現(xiàn)了map接口和Cloneable、Serializable兩個(gè)接口,代表該類是可復(fù)制、序列化的類。
public class Hashtable<K,V> extends Dictionary<K,V> implements Map<K,V>, Cloneable, java.io.Serializable
ps:dic類和map類較為相似,是一個(gè)抽象的hash映射類,包含了一些簡(jiǎn)單的空方法和接口。
private transient Entry<?,?>[] table;
瞬時(shí)數(shù)組變量,它就是hashtable中,最核心的數(shù)據(jù)存儲(chǔ)區(qū)域。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26
