Java 的幾種版本

weixin_34126215發表於2016-04-27

1. Java ME

  Java ME(Java 2 Micro Edition),是為機頂盒、行動電話和PDA之類嵌入式消費電子裝置提供的Java語言平臺,包括虛擬機器和一系列標準化的Java API。它是Java 2的一個組成部分,它與J2SEJ2EE並稱,並且同樣是通過JCP(Java Community Process)制訂。根據Sun的定義:Java ME是一種高度優化的Java執行環境,主要針對消費類電子裝置的,例如蜂窩電話和可視電話、數字機頂盒、汽車導航系統等等。JAVA ME(Java2平臺微型版)技術在1999年的JavaOne Developer Conference大會上正式推出,它將Java語言的與平臺無關的特性移植到小型電子裝置上,允許移動無線裝置之間共享應用程式今天,不止是桌面上的電腦,手中的電話、汽車中的通訊裝置、家中的冰箱、 洗衣機等都將連入網際網路,這是一個移動的網際網路。J2ME就是Java程式在這些連線裝置上的執行平臺和開發環境,其基本思想和 J2SE類似,就是在各種裝置上安裝適合它的Java虛擬機器,應用程式則在虛擬機器之上執行。
  
  Java本來就是為了嵌入式系統而生,1990年12月,Sun公司內部 由James Gosling、Patrick Naughton以及Mike Sheridan成立了一個叫做Green Team的小組。Green Team小組的主要目標,是要發展一種新架構,而這種架構必須能夠在消費性電子產品作業平臺上執行,現在我們普遍認識的PDA、手機或是資訊家電 (IA),都是屬於這種架構的目標平臺。雖然在1999年,Java被分割成J2ME、J2SE、J2EE,所以有了J2ME這個名詞的出現。但是 Java並非1999年才開始發展嵌入式系統上的應用。其實,Java本來就是為了嵌入式系統而發展的一種架構。即使目前大家多半將Java的應用聚焦於 企業上的J2EE應用。但是嚴格來說,J2ME才是Java真正“迴歸本心”的領域。
 
  Sun公司將J2ME(Java 2 Micro Edition)定義為“一種以廣泛的消費性產品為目標的、高度優化的Java執行時環境”。J2ME是Sun公司為嵌入式開發所定義的一個框架,由一系 列標準的規範組成。所以J2ME是一系列技術規範的總稱,而不是單一的規範。
  J2ME的所有技術標準都由JAVA社群過程(Java Community Process,JCP)制定,JCP是一個開放的國際組織,主要由Java開發者以及被授權者組成,職能是發展和更新Java技術規範、參考實現 (RI)、技術相容包(TCK)。Java技術和JCP兩者的原創者都是SUN計算機公司。JCP維護的規範包括J2ME、J2SE、J2EE、XML、OSS、JAIN等。組織成員可以提交JSR(Java Specification Requests),通過特定程式以後,進入到下一版本的規範裡面。J2ME使用配置(CDC或CLDC)和簡表(Profile)定製 JRE,一個完整的JRE由配置和簡表組成,配置決定了所使用的JVM(可能是CVM或KVM),而簡表通過定義特定的類來為應用程式提供功能上的支援, 一個簡表定義了裝置所提供的API集合。例如:CLDC規範目前分為v1.0 JSR 30、v1.1 JSR 139;CDC規範目前分為v1.0 JSR 36、v1.1 JSR 218;MIDP規範目前分為v1.0 JSR 37、v2.0 JSR 118。
 
  與J2SE和J2EE相比,JAVA ME總體的的執行環境和目標更加多樣化,但其中每一種產品的用途卻更為單一,而且資源限制也更加嚴格。為了在達到標準化和相容性的同時儘量滿足不同方面的 需求,JAVA ME的架構分為Configuration、Profile和Optional Packages(可選包)。它們的組合取捨形成了具體的執行環境。Configuration主要是對裝置縱向的分類,分類依據包括儲存和處理能力,其中定義了虛擬機器特性和基本的類庫。已經標準化的Configuration有- Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。Profile建立在Configuration基礎之上,一起構成了完 整的執行環境。它對裝置橫向分類,針對特定領域細分市場,內容主要包括特定用途的類庫和API。CLDC上已經標準化的Profile有Mobile Information Device Profile (MIDP)和Information Module Profile(IMP),而CDC上標準化的Profile有Foundation Profile(FP)、Personal Basis Profile(PBP)和Personal Profile(PP)。可選包獨立於前面兩者提供附加的、模組化的和更為多樣化的功能。目前標準化的可選包包括資料庫訪問、多媒體應用、藍芽等等。

 

2. J2SE

  Java2平臺包括:標準版(J2SE)、企業版(J2EE)和微縮版(J2ME)三個版本。J2SE,J2ME和J2EE,這也就是 SunONE(Open NetEnvironment)體系。J2SE就是Java2的標準版,主要用於桌面應用軟體的程式設計J2ME主要應用於嵌入式系統開發,如手機和PDA的程式設計;J2EE是Java2的企業版,主要用於分散式的網路程式的開發,如電子商務網站和ERP系統

 

3. J2EE

  J2EE是一套全然不同於傳統應用開發的技術架構,包含許多元件,主要可簡化且規範應用系統的開發與部署,進而提高可移植性、安全與再用價值。J2EE核心是一組技術規範與指南,其中所包含的各類元件、服務架構及技術層次,均有共同的標準及規格,讓各種依循J2EE架構的不同平臺之間,存在良好的相容性,解決過去企業後端使用的資訊產品彼此之間無法相容,企業內部或外部難以互通的窘境
  J2EE元件和“標準的” Java類 的不同點在於:它被裝配在一個J2EE應用中,具有固定的格式並遵守J2EE規範,由J2EE伺服器對其進行管理。J2EE規範是這樣定義J2EE元件 的:客戶端應用程式和applet是執行在客戶端的元件;Java Servlet和Java Server Pages (JSP) 是執行在伺服器端的Web元件;Enterprise Java Bean (EJB )元件是執行在伺服器端的業務元件。

 

 

 

 

參考文章

1. 百度百科,Java ME, Java EE, Java SE。

相關文章