国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

知己知彼——J2ME技術(shù)詳

2019-11-18 15:53:54
字體:
供稿:網(wǎng)友

   知己知彼——J2ME技術(shù)詳(圖一)
  J2ME(java 2 Platform Micro Edtion)是什么?它既不是一個軟件,又不是一個規(guī)范。這樣說可能會令人糊涂,甚至某些已經(jīng)熟悉J2SE的開發(fā)人員都感到困惑。實際上,我們可以把J2ME看成是一個技術(shù)和規(guī)范的集合。與J2SE針對桌面應(yīng)用開發(fā)不同,J2ME針對多種多樣的嵌入式設(shè)備,由于這類設(shè)備的多樣性,期望有一種能適合所有設(shè)備的方案并不現(xiàn)實, J2ME只是一個統(tǒng)稱,是所有與嵌入式設(shè)備相關(guān)技術(shù)的集合。
  
  J2ME的組成
  
  J2ME平臺并沒有定義一種新語言,它僅僅是把已有的Java技術(shù)移植到手持設(shè)備和嵌入式設(shè)備上,它盡可能地維護了與J2SE的兼容性。事實上,J2ME并沒有定義一些新類去滿足資源受限設(shè)備的應(yīng)用需求,而是去掉了J2SE(或者J2EE)中不必要的部分,從而適合于這類資源受限設(shè)備的需求。
  
  假如要深入地了解J2ME,我們就必須弄清楚J2ME與EmbeddedJava應(yīng)用環(huán)境和PersonalJava應(yīng)用環(huán)境的關(guān)系(圖1)?!?br />   知己知彼——J2ME技術(shù)詳(圖二)
  從圖中可以看出,EmbeddedJava應(yīng)用環(huán)境和PersonalJava應(yīng)用環(huán)境與J2ME平臺是完全分離的,它們都基于JDK 1.1,而J2ME平臺的來源則完全不同。Java Card是J2ME的補充,但并不是它的一部分。
  
  自O(shè)ak出現(xiàn)以后,Java技術(shù)經(jīng)過了漫長的發(fā)展歷程:從Embedded Java到PersonalJava應(yīng)用環(huán)境,再到MIDP 1.0。直到不久以前,“Java 2平臺微型版(J2ME)”一詞還是“移動信息設(shè)備概要(MIDP)”的同義詞,因為MIDP 1.0是當時市場上惟一的J2ME PRofile,也是惟一針對電子設(shè)備編程的J2ME API。而現(xiàn)在J2ME已經(jīng)進化成為一種有組織的架構(gòu),其中包括一組針對高端PDA和嵌入式設(shè)備的Java API,以及一組針對諸如手機、低端PDA和智能卡等資源嚴重受限設(shè)備的Java API。J2ME平臺規(guī)范(JSR 68)定義了所有要害元素,這些元素盡可能地提高了可重用性,包括概要、配置、可選包和構(gòu)件。圖2顯示了J2ME的組織結(jié)構(gòu),這是一種軟件棧結(jié)構(gòu),新的功能可以被不斷地增添上去。
  
  圖2中并沒有顯示出與廠商有關(guān)的API,它們并不是標準概要和配置的一部分,比如控制無線電傳輸器或其他給定設(shè)備的API,你可以把它們看成是對標準概要的擴展。
  
  在這里,Configuration是一個規(guī)范,它定義了基本的J2ME運行環(huán)境,包括虛擬機和一組源自J2SE的核心類子集。Profile是建立在某個Configuration之上的特定API集合,它是對Configuration的擴展,提供基本Configuration所缺少的功能,包括應(yīng)用程序生命周期、用戶界面、網(wǎng)絡(luò)連接、存儲、安全等。為了在不改動Profile的前提下增加設(shè)備的功能,J2ME在Profile之外又提供了可選包,您可將它們看成Profile的擴展,每個可選包為某個或某些Profile增加特定的功能?!?br />   知己知彼——J2ME技術(shù)詳(圖三)
  J2ME的這種結(jié)構(gòu)很好地適應(yīng)了嵌入式設(shè)備的巨大多樣性。從低到高,你可根據(jù)設(shè)備的情況采用不同的Configuration,在同一Configuration中你又可以根據(jù)設(shè)備的用途選用不同的Profile,你還可以在同一設(shè)備中采用多個Profile,假如你還嫌功能不夠,尚有可選包可用。
  
  到現(xiàn)在,我們已經(jīng)非常清楚地了解了J2ME的結(jié)構(gòu),讓我們來看看已經(jīng)發(fā)布的Configuration和Profile有哪些?
  
  已發(fā)布的Configuration
  
  截止到目前,已發(fā)布了兩個Configuration:連接受限設(shè)備配置 ( Connected Limited Device Configuration,簡稱CLDC) 和連接設(shè)備配置(Connected Device Configuration,簡稱CDC)。這兩個Configuration的共性是它們都是針對有網(wǎng)絡(luò)連接的設(shè)備定義的,無論它是高速的固定連接,還是低速的無線連接;另一方面,兩者之間也存在很多差別,包括各自所采用的Java虛擬機,以及可提供的特性和API。
  
  無論是CLDC還是CDC,其核心都是Java虛擬機。CLDC采用了KVM,它是一個真正的最小的而又基本上完整的Java虛擬機,小到可以裝入幾十KB的內(nèi)存中。CDC則采用了CVM,它是一個具有完整的J2SE 1.3 VM支持能力的Java虛擬機,因此也更適合使用、更有效,但又比標準的J2SE VM小。作為一個全功能的Java虛擬機,CVM幾乎支持J2SE VM的所有先進特性,包括最底層的調(diào)錯處理和本地語言接口。
   知己知彼——J2ME技術(shù)詳(圖四)
  1.CLDC 
  
  CLDC(Connected Limited Device Configuration )是最小的J2ME配置,它直接源自Spotless System,針對非常小、資源有限、有網(wǎng)絡(luò)連接的設(shè)備,諸如低端手機、PDA、雙向?qū)ず魴C等。這些設(shè)備計算能力較低、內(nèi)存少、電池壽命不長、網(wǎng)絡(luò)帶寬小。
  
  CLDC對硬件的要求不高,可以運行在采用16位或32位處理器、最少擁有160KB ROM和32KB RAM,并能提供某種網(wǎng)絡(luò)連接的設(shè)備上。CLDC采用J2SE核心API的子集,還增加了特定的GCF (Generic Connection Framework)包——javax .microedition.io。
   知己知彼——J2ME技術(shù)詳(圖五)
  2.CDC 
  
  與CLDC相比,CDC是為資源更寬裕的設(shè)備定義的規(guī)范,諸如高端手機、高端PDA、機頂盒、信息家電、甚至汽車導(dǎo)航系統(tǒng)等。支持CDC的設(shè)備需要32位處理器、至少2MB內(nèi)存以及某種網(wǎng)絡(luò)連接。CDC是CLDC的超集,它包括CLDC定義的所有類,甚至包括J2SE未包括的類,諸如GCF等。它是一個具有與J2SE 1.3 VM相同功能但規(guī)模更小的虛擬機。由于CDC包括了更多的J2SE 核心類,因此編程更加方便。
  
  已發(fā)布的Profile
  
  J2ME中第一個正式發(fā)布的Profile是MIDP,而且隨后比較長的時間內(nèi)未有其他Profile發(fā)布,以至有人把MIDP等同于J2ME了,但實際上,MIDP只是J2ME中的一部分。目前已經(jīng)發(fā)布的Profile包括基于CLDC的MIDP和PDAP(Personal Digital Assistant Profile);基于CDC的FP(Foundation Profile)、PBP(Personal Basis Profile)和PP(Personal Profile)。
  
  1.基于CLDC的Profile 
   知己知彼——J2ME技術(shù)詳(圖六)
  基于CLDC的Profile包括MIDP和PDAP,但已經(jīng)正式發(fā)布的只有MIDP。MIDP (The Mobile Information Device Profile)是最早發(fā)布且最成熟的J2ME Profile。它主要是針對手機設(shè)備提出的,目前幾乎所有的主流廠商都支持MIDP,包括摩托羅拉、諾基亞、愛立信、西門子等主要手機生產(chǎn)商;支持MIDP的電信運營商包括SprintPCS、 Nextel和NTT DoCoMo。許多獨立軟件開發(fā)商也支持MIDP,表1描述了MIDP 2.0對設(shè)備的需求。
  
  MIDP規(guī)范最早由摩托羅拉提出,被JSR 37定義。它定義了MIDP應(yīng)用程序的生命周期類、網(wǎng)絡(luò)類、用戶界面包、存儲包,具體包括java.io、java.lang、java.lang、javax.microedition.io、javax.microedition.lcdui、javax.microedition.midlet和javax.microedition.rms。
  知己知彼——J2ME技術(shù)詳(圖七)
  2.基于CDC的Profile
  
  CDC針對更高端的手持或嵌入式設(shè)備,這些設(shè)備有更多的內(nèi)存和更強的處理能力,但其配置和概要是相同的。CDC為設(shè)備提供了通用的、底層的界面;基于CDC的Profile則提供了適合特定設(shè)備的類。截止到目前,基于CDC的Profile有FP、PBP和PP。
  
  (1)FP
  
  FP(The Foundation Profile)規(guī)范不像其他的Profile那樣提供運行環(huán)境,而是為其他基于CDC的Profile 提供一個基礎(chǔ),本規(guī)范編號為JSR 46。 它為基于CDC的Profile提供了更好的安全性、更多的工具包。該規(guī)范并沒有包含任何用戶界面包,因此該規(guī)范適合于某些無用戶界面但有網(wǎng)絡(luò)連接的專用嵌入設(shè)備。
  
  (2) PBP
  
  PBP(The Personal Basic Profile)規(guī)范針對有網(wǎng)絡(luò)連接并有基本圖形界面的設(shè)備。潛在的市場包括交互數(shù)字電視、信息電話亭等。這些設(shè)備需要一個基本的圖形界面,但并不需要完整的AWT支持。該規(guī)范與PP的主要區(qū)別是:PP要考慮移植PersonalJava ,因此必須支持以前PersonalJava中的所有特性。該規(guī)范對硬件的要求如下:最少2MB的ROM、1MB的 RAM(應(yīng)用程序和本地化資源所需的內(nèi)存不包括在內(nèi))、穩(wěn)定的網(wǎng)絡(luò)連接、基本的圖形界面。PBP規(guī)范的編號為JSR 129,它定義了最小的AWT用戶界面包、JavaBeans支持相關(guān)包、應(yīng)用程序生命周期類。PBP應(yīng)用程序也叫Xlet。
  
 ?。?)PP
  
  PP(PersonalProfile)是PersonalJava環(huán)境的具體實現(xiàn),由JSR 62定義。它是PBP的超集,提供了CDC、FP和PBP中描述的所有Java包。它還增加了其他Profile缺少的AWT類和小程序支持。PP主要針對高端設(shè)備,其內(nèi)存應(yīng)該不少于2MB。
  
  已發(fā)布的可選包
  
  截止到目前,正式發(fā)布的可選包有WMA(The Wireless Messaging API)、MMAPI(The Mobile Media API)和RMI API。
  
 ?。?)WMA可選包
  
  它由JSR 120定義, 為某些具有收發(fā)無線信息的設(shè)備提供API。它定義了一組收發(fā)信息的API,信息既可以是文本信息也可以是二進制信息,最典型的就是SMS(短信服務(wù))。它可用于CLDC和CDC。該API只有一個包javax.wireless.messaging 。
  
  (2)MMAPI可選包
  
  MMAPI由JSR 135定義,它為某些具有高級音響和多媒體功能的設(shè)備提供了一個通用但靈活的多媒體處理API。該可選包以CLDC為最低需求,因此也可用于CDC。該API定義的包如表2所示。
  
 ?。?)RMI可選包
  
  RMI由JSR 66定義, 它為某些需要RMI功能的編程提供了支持。該API是J2SE中相應(yīng)API的改進版本。 包名為java.rmi。
  
  未來發(fā)展
  
  在三個Java 2平臺中,J2ME可能是變化最快的。隨著手持設(shè)備、嵌入式設(shè)備的增多,許多新的Profile、可選包也即將發(fā)布,讓我們來看一些即將發(fā)布的最令人興奮的Profile和可選包。
  
  ● MIDP2.0

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 志丹县| 松阳县| 绥芬河市| 卢氏县| 怀集县| 漳州市| 东安县| 顺昌县| 巢湖市| 繁峙县| 同心县| 漳州市| 灯塔市| 和政县| 上饶市| 德阳市| 东安县| 嫩江县| 沧州市| 垫江县| 武清区| 彭阳县| 武城县| 阳新县| 民权县| 长春市| 榆社县| 宁德市| 温宿县| 新营市| 马关县| 四平市| 合肥市| 石林| 托克托县| 来宾市| 东宁县| 繁昌县| 武城县| 集贤县| 陈巴尔虎旗|