程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> 深入解析:J2ME 的平台體系結構

深入解析:J2ME 的平台體系結構

編輯:JAVA編程入門知識
  做J2ME應用開發的程序員也許經常會被一些名詞或者概念所迷惑,比如Personal Basic Profile和Personal Profile有什麼關系?基於CLDC的應用程序能夠無修改的移植到基於CDC的設備上嘛?要回答這些問題並不輕易,因為你必須首先揭開J2ME平台的神秘面紗。
  2000年當J2ME平台的CLDC發布的時候,所有的Java開發者都為之興奮不已。SUN也不負眾望在兩個月後發布了基於CLDC的MIDP,給開發者提供了開發交互式應用程序的平台。我想現在國內還主要是基於CLDC/MIDP在開發應用吧。J2ME平台的另一個規范CDC在大概10個月後才發布,同時發布的還有Foundation Profile。但是由於他們都沒有給開發者提供開發可交互應用程序的API,因此他們發布的影響遠遠小於CLDC/MIDP的發布。大概在2003年SUN發布了基於CDC的Personal Basic Profile和Personal Profile。他們的組合替代了以前的PersonalJava平台。
  
  是不是已經被這些名字弄糊塗了,我們現在來看J2ME平台的結構。J2ME平台是本著Configuration和Profile結合來設計的。Configuration是提供支持最大范圍設備的最小的平台。Profile是針對特定的設備提供相應的開發包集合。在J2ME的兩個基本配置CDC和CLDC是按照如下的標准進行區分的。
  CLDC:
  
  512 KB 以下內存
  有限能源供給(通常使用電池)
  有限或非持續網絡連接
  簡單的用戶界面
  16位或者32位的處理器
  CDC:
  
  2M以上內存
  具有網絡連接能力,通常為無線網絡
  需要實現java虛擬機規范的全部功能
  32位或者64位的處理器
  
  從上述的要求中我們不難看出CLDC主要針對那些資源非常受限的設備比如手機、PDA、雙工尋呼機等。而CDC主要面對那些家電產品,比如機頂盒、汽車導航系統等。
  下面我們來看看J2ME平台的結構圖:
  
 

  我們可以看出J2ME的核心是Configuration,在它裡面定義了java的虛擬機,通過它來和底層的Host OS打交道。Profile提供了訪問設備的IO或者圖形界面的能力,這樣Configuration和Profile共同構成了J2ME的運行環境。比如CLCD/MIDP可以提供給你開發手機程序的環境。在Profile之上針對不同的設備還可以提供不同的可選開發包。
  由於CLDC/MIDP大家都比較熟悉了,我們下面主要介紹一下基於CDC的J2ME系統構架,同樣還是看它的系統圖:
  

  基於CDC的設備可以支持全部的Java2語言規范和Java虛擬機規范,它是CLDC的超集並且遠大於CLDC,因此基於CLDC的程序是可以無修改的移植到基於CDC的設備的。Foundation Profile是對CDC進行擴展的Profile,但是他並沒有提供GUI的開發包,GUI是在Personal Basic Profile中進行定義的,它提供了AWT的一個子集給開發人員。它還提供了Xlet應用程序模式——針對java TV。Personal Profile是Personal Basci Profile的超集。他提供了對Applet的支持,豐富了AWT的組件,添加了java.awt.datatransfer包。
 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved