Java Runtime Environment (JRE) 包含:html
Java虛擬機、庫函數、運行Java應用程序和Applet所必須文件java
Java 2 SDK (Development Kit)包含:編程
JRE的超集,包含編譯器和調試器等用於程序開發的文件 api
Java運行環境的三項主要功能:緩存
加載代碼:由class loader 完成;服務器
校驗代碼:由bytecode verifier 完成;oracle
執行代碼:由 runtime interpreter完成。jvm
JDK 和JRE:函數
sdk(也就是jdk)是jre的超集,是在jre的基礎上增長了編譯器及其餘一些開發工具。工具
jre就是java運行時環境,包括了jvm和其它一些java核心api,任何一臺電腦,只有安裝了jre才能夠運行java程序.
總結:
1. 若是隻是要運行JAVA程序,之須要JRE就能夠。 JRE一般很是小,也包含了JVM.
2. 若是要開發JAVA程序,就須要安裝JDK。
JVM是一種規範,可使用軟件來實現,也可使用硬件來實現,就是一個虛擬的用於執行bytecodes字節碼的計算機。他也定義了指令集、寄存器集、結構棧、垃圾收集堆、內存區域。
JVM負責將java字節碼解釋運行,邊解釋邊運行,這樣,速度就會受到必定的影響。JAVA提供了另外一種解釋運行的方法JIT(just in time),能夠一次解釋完,再運行特定平臺上的機器碼,高級的JIT能夠只能分析熱點代碼,並將這些代碼轉成本地機器碼,並將結果緩存起來,下次直接從內存中調用,這樣就大大提升了執行JAVA代碼的效率。這樣就實現了跨平臺、可移植的功能。
1. JVM是指在一臺計算機上由軟件或硬件模擬的計算機;它相似一個小巧而高效的CPU。
2. byte-code代碼是與平臺無關的是虛擬機的機器指令。
3. java字節代碼運行的兩種方式:
1)方式interpreter(解釋)
2)Just-in-time(即時編譯):有代碼生成器將字節代碼轉換成本機的機器代碼,而後能夠以較高速度執行。
JAVA的跨平臺實現的核心是不一樣平臺使用不一樣的虛擬機
不一樣的操做系統有不一樣的虛擬機。Java 虛擬機機制屏蔽了底層運行平臺的差異,實現了「一次編譯,隨處運行」。
1. 桌面應用編程
2. WEB客戶端編程
3. WEB服務器編程
4. 手機編程(J2ME或者如今的Android系統上開發應用程序)
5. 機器人編程
1. 在哪裏下載JDK, 網址:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
2. JDK7的下載地址:
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
根據本身的系統下載不一樣的版本。若是系統是64位則能夠下載64位系統。如何查看本身的操做系統究竟是32位仍是64位呢?,右鍵單擊桌面的計算機,出現以下圖所示信息:
咱們以win7系統爲例,xp下的配置基本一致。
1. 右鍵單擊計算機,點擊屬性:
修改系統環境變量Path,在最前面追加% JAVA_HOME %\bin,並以;和原路徑分隔。再增長:「.;」。這是表示當前目錄的意思。
classpath問題:若是使用jdk1.5以上就不須要配置這個環境變量!JRE會自動搜索當前路徑下的類文件及相關jar文件。
運行àcmdà輸入命令:java –version: 出現以下結果,則經過測試。
輸入javac,出現以下結果,則經過測試。