1. 程式人生 > >Java JVM、JDK、JRE、Java三大體系知識串聯

Java JVM、JDK、JRE、Java三大體系知識串聯

最近LZ在鞏固自己Java的基礎知識, 看到上面的那些知識時還是難以一時完全地掌握,現在將它們做一個整體的收集和整理,看起來就清晰多了,下面寫下來與大家共享。
## Java JVM ##
首先是JVM(Java virtual Machine)是java虛擬機器的簡稱,JVM是可以利用實際的計算機進行模擬的模擬運算,擁有自己完善的硬體架構,它將.class的指令集(位元組碼)編譯成機器語言,以便機器識別(主要檔案-解釋自己的指令集並對映到CPU的指令集中進行呼叫),這裡也能體現出Java JVM 跨平臺的特點,即不同的系統對應於不同的JVM對映地址。
下面貼出JVM的架構圖!
Java JVM架構圖

[Java JVM原理圖來源](https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=589651432,1459728255&fm=23&gp=0.jpg)

## Java JDK、JRE的關係 ##

Java JDK

## Java的三大體系 ##
以前的Java三大體系叫J2ME、J2SE、J2EE,現在叫做Java ME、Java SE和Java EE,區別如下:

  1. Java ME(Java Platform,Micro Edition)。Java ME 為在移動裝置和嵌入式裝置(比如手機、PDA、電視機頂盒和印表機)上執行的應用程式提供一個健壯且靈活的環境。Java ME 包括靈活的使用者介面、健壯的安全模型、許多內建的網路協議以及對可以動態下載的連網和離線應用程式的豐富支援。基於 Java ME 規範的應用程式只需編寫一次,就可以用於許多裝置,而且可以利用每個裝置的本機功能。
  2. Java SE(Java Platform,Standard Edition)。它允許開發和部署在桌面、伺服器、嵌入式環境和實時環境中使用的 Java 應用程式。Java SE 包含了支援 Java Web 服務開發的類,併為 Java Platform,Enterprise Edition(Java EE)提供基礎。
  3. Java EE(Java Platform,Enterprise Edition)。企業版本幫助開發和部署可移植、健壯、可伸縮且安全的伺服器端 Java 應用程式。Java EE 是在 Java SE 的基礎上構建的,它提供 Web 服務、元件模型、管理和通訊 API,可以用來實現企業級的面向服務體系結構(service-oriented architecture,SOA)和 Web 2.0 應用程式。

LZ自己比對研究完以上內容收穫甚多,對Java的執行機制有了更深的理解,Java作為高階語言的一種,我認為JVM無疑是它的核心所在,多做了解對平時的開發會有很多幫助。加油吧,Alien_Zhang。