Java筆記 - JDK、JRE與JVM
(1)JDK與JRE
JDK(JAVA Development Kit)不僅包含java運行時環境JRE(JAVA Runtime Environment)的超集,還為開發者還提供了javac、java、javadoc、jar等編譯器及其他一些開發工具。
Java Runtime Environment (JRE) 包含執行字節碼文件的JVM(JAVA Virtual Machine)、庫函數、運行Java應用程序和Applet所必須文件。java運行環境具有加載代碼(class loader)、校驗代碼(bytecode verifier )和 執行代碼(runtime interpreter)等功能。
(2)配置環境變量
配置系統環境變量Path:執行dos命令時,系統會在path(靜態+臨時)指定的路徑中尋找該命令的執行文件。需要在最前面追加【.;% JAVA_HOME %\bin;】。其中:JAVA_HOME是jdk安裝目錄;分號用於將多個目錄分開,目錄值中不能加分號;點號表示當前目錄。
配置CLASSPATH路徑:如果使用jdk1.5以上就不需要配置這個環境變量!JRE會自動搜索當前路徑下的類文件及相關jar文件。
運行cmd輸入命令【java –version】,若出現如下結果,則通過表明JDK安裝成功。
(3)JVM虛擬機
JAVA的跨平臺實現的核心是為不同的操作系統提供不同的JVM。JVM屏蔽了底層運行平臺的差別,為上層提供了統一的字節碼(byte-code代碼是與平臺無關的是虛擬機的機器指令)執行環境,實現了“一次編譯,隨處運行”。
JVM(JAVA Virtual Machine)一種規範,是指在一臺計算機上由軟件或硬件模擬的用於虛擬執行字節碼文件的計算機,類似一個小巧而高效的CPU。定義了指令集、寄存器集、結構棧、垃圾收集堆、內存區域等。IBM、SUN、BEA、Intel等都有為不同的操作系統提供不同的JVM或java芯片(正在研發),甚至自己也可以根據JVM規範編寫一個JVM。
JVM負責將java字節碼Interpreter(解釋)運行,邊解釋邊運行,這樣速度就會受到一定的影響。JAVA提供了另一種解釋運行的方法JIT(just in time,即時編譯),就是由代碼生成器將“熱點’”字節碼一次性解釋轉換成可以較高速度的運行在特定平臺上的本地機器碼,並將結果緩存起來,下次直接從內存中調,這樣就大大提高了執行JAVA代碼的效率。這樣就實現了跨平臺、可移植的功能。
Java筆記 - JDK、JRE與JVM