[TOC] 一、頂部注釋分析 1.1 從注釋中得到的結(jié)論 Hash table and linked list implementation of the Set inter...
[TOC] 一、頂部注釋分析 1.1 數(shù)據(jù)結(jié)構(gòu) 1.2 從注釋中得到的結(jié)論 LinkedHashMap 是 Map 接口的哈希表和鏈表的實現(xiàn),具有可預(yù)知的迭代順序 Linke...
[TOC] 一、頂部注釋分析 1.1 數(shù)據(jù)結(jié)構(gòu) 1.1.1 JDK1.7實現(xiàn) 在 JDK1.7中,ConcurrentHashMap 通過“鎖分段”來實現(xiàn)線程安全 通過將哈希...
[TOC] 一、頂部注釋分析 1.1 首句定義 Doubly-linked list implementation of the List and Deque interfa...
[TOC] 13.2 線程安全 《Java Concurrency In Practice》對 “線程安全” 有一個比較恰當(dāng)?shù)亩x:“當(dāng)多個線程訪問一個對象時,如果不用考慮這...
[TOC] 12.1 概述 在許多情況下,讓計算機同時去做幾件事情,不僅是因為計算機的運算能力強大了,還有一個很重要的原因是計算機的運算速度與它的存儲和通信子系統(tǒng)速度的差距太...
[TOC] 11.1 概述 在部分的商用虛擬機(Sun HotSpot、IBM J9)中,Java 程序最初是通過解釋器(Interpreter)進(jìn)行解釋執(zhí)行的,當(dāng)虛擬機發(fā)現(xiàn)...
[TOC] 10.2 Javac 編譯器 10.2.1 編譯過程 從Sun Javac 的代碼來看,編譯過程大致可以分為3個過程,分別是:解析與填充符號表過程。插入式注解處理...
[TOC] 8.1 概述 執(zhí)行引擎是 Java 虛擬機最核心的組成部分之一?!疤摂M機” 是一個相對于 “物理機” 的概念,這兩種機器都有代碼執(zhí)行能力,其區(qū)別是物理機的執(zhí)行引擎...
[TOC] 7.1 概述 類加載機制:虛擬機把描述類的數(shù)據(jù)從Class文件加載到內(nèi)存,并對數(shù)據(jù)進(jìn)行校驗、轉(zhuǎn)換解析和初始化,最終形成可以被虛擬機直接使用的 Java 類型。 與...
[TOC] 6.2 無關(guān)性的基石 各種不同平臺的虛擬機與所有平臺都統(tǒng)一使用的程序存儲格式——字節(jié)碼(ByteCode)是構(gòu)成平臺無關(guān)性的基石。 實現(xiàn)語言無關(guān)性的基礎(chǔ)仍然是虛擬...
[TOC] 3.1 概述 垃圾收集(Garbage Collection,GC)需要完成的3件事情:哪些內(nèi)存需要回收?什么時候回收?如何回收? 在 Java內(nèi)存運行區(qū)域的各個...
[TOC] 2.2運行時數(shù)據(jù)區(qū)域 2.2.1 程序計數(shù)器(各線程私有) 程序計數(shù)器(Program Counter Register)是一塊較小的內(nèi)存空間,它可以看作是當(dāng)前線...