天天看點

深入了解JVM(三)——JVM結構

深入了解JVM,就必須了解JVM的結構。

下圖展示了JVM的主要結構:

深入了解JVM(三)——JVM結構

可以看出,JVM主要包括四個部分:

第一部分:類加載器(Class Loader)

第二部分:執行引擎(Execution Engine)

第三部分:運作時資料區(Runtime Data Area,也稱記憶體區),記憶體區又包含:

(1)方法區(Method Area)

(2)堆(HEAP)

(3)Java虛拟機棧(Java VM Stack)

(4)程式計數器(Program Counter Register,亦簡稱PC Register)

(5)本地方法棧(Native Method Stack)

  • 第四部分:本地方法接口(Native Interface)

注意點強調:

在運作時資料區,方法區和堆是所有Java線程共享的,而Java虛拟機棧、本地方法棧和程式計數器則是每個線程私有的。

(1)類是如何加載?加載的機制是什麼?--》入口(未完待續)

(2)運作時資料區,每個區都存放着什麼資訊?各自的功能有哪些?--》入口(未完待續)