三大平台
1.Java SE
Java SE 組成概念圖
Java SE分為四個主要部分:JVM、JRE、JDK與java語言
java程式必須有jvm。jvm包括在jre中,是以運作java程式必須裝jre.如果開發java程式就逆序取得jdk,jdk包括jre以及開發過程中需要的一些工具程式,像是javac、java、appletviewer等工具程式。
java語言隻是java SE的一部分,java最主要的是提供龐大強大的标準api,提供字元串的處理、資料的輸入/輸出、網絡套件、使用者視窗等功能。可以使用這些标準來開發,無需重複開發功能相同的元件。
2.Java EE
Java EE以Java SE為基礎,定義了一系列的服務、API、協定等,适用于開發分布式,多層次、以元件為基礎、以web為基礎的應用程式,整個JavaEE是相當龐大的,比較為人熟悉的技術像jsp、servlet、Javamail、enterprisJavaBean等。
3.Java ME
Java平台中版本最小的一個,目的是作為小型數字裝置上開發及部署應用程式的平台,像是消費性電子産品或嵌入式系統等,最為熟悉的裝置如手機、PDA、股票機等。可以使用該平台來開發這些裝置上的應用程式,如Java遊戲、股票相關程式、記事本程式、月曆程式等。
JCP與JCR
jcp(Java Community Process) 這是一個國際開放組織。目的是讓Java的演進由sun非正式的主導。任何想要加入Java功能或特性,必須以jsr(Java Specification Request)正式檔案送出,jsr必須經過jcp執行委員會(Executive Committee)通過,方可成為最終的标準檔案。若jsr成為最終檔案後,必須根據jsr成果做出免費且開發原始碼的參考實作稱為RI(Reference Implementation),并提供TCK(Technology Compatibility Kit)作為技術相容測試工具箱。
JVM/JRE/JDK
1.JVM
當地的翻譯員,将位碼文檔翻譯成平台看得懂的0、1序列,使得Java程式可以達到編譯一次到處執行的跨平台的目的。
2.JRE
Java的執行環境,包含了Java SEAPI與JVM
3JDK.
編譯成位碼檔案這樣的工具程式由JDK(Java development Kit)提供。
下圖的JRE是public jre,是Java程式執行平台。
下圖的JRE是private JRE開發Java程式時測試用,bin存放的是Development Tools,src.zip和javax-src.zip是Source Code選項,也就是Java SE API實作源代碼。其中編譯好的.class文檔放在JRE 的lib 目錄下,其中的rt,jar.解壓縮會看到很多的.class檔案