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

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

J2ME中文教程之J2ME技術(shù)概述

2019-11-17 06:20:46
字體:
供稿:網(wǎng)友

  隨著移動通信的突飛猛進,移動開發(fā)這個新鮮的字眼慢慢成為開發(fā)者關(guān)注的熱點。在網(wǎng)上進行的最近一份調(diào)查顯示,有24.34%的受訪者涉足嵌入式/移動設(shè)備應(yīng)用開發(fā),這個數(shù)字可能略高于實際的比例,但也足可說明嵌入式/移動設(shè)備應(yīng)用開發(fā)是一塊誘人的新鮮奶酪。
J2ME(java 2 Micro Edition)是嵌入式/移動應(yīng)用平臺的王者,linux和WinCE分列二、三位。Nokia等廠商力推的Symbian平臺目前開發(fā)者占有率尚未達到滿足水平,考慮到調(diào)查項合并了嵌入式設(shè)備(例如PDA)和移動設(shè)備(例如智能手機),Symbian、WinCE系列在移動平臺上會是競爭的主要兩方。假如廠商能在標(biāo)準(zhǔn)實現(xiàn)上做得更加規(guī)范,則J2ME的跨平臺特性會發(fā)揮得更加淋漓盡致,繼續(xù)保有王者地位。本章將從J2ME的體系結(jié)構(gòu)和MIDlet應(yīng)用程序模型。

  什么是J2ME

  學(xué)習(xí)J2ME以前知道什么是J2ME是非常重要的。J2ME是SUN公司針對嵌入式、消費類電子產(chǎn)品推出的開發(fā)平臺,與J2SE和J2EE共同組成Java技術(shù)的三個重要的分支。J2ME實際上是一系列規(guī)范的集合,由JCP組織制定相關(guān)的Java Specification Request(JSR)并發(fā)布,各個廠商會按照規(guī)范在自己的產(chǎn)品上進行實現(xiàn),但是必須要通過TCK測試,這樣確保兼容性。比如MIDP2.0規(guī)范就是在JSR118中制定的。可能接觸過J2ME的開發(fā)者會覺得說J2ME是一系列的規(guī)范不準(zhǔn)確吧。因為我們在開發(fā)中用到了很多例如CLDC(Connected Limited Devices Configuration)和MIDP(Mobile Information Devices PRofile)等內(nèi)容。其實這并不矛盾,因為這些就是在相關(guān)規(guī)范中制定的。假如你還沒有很好的理解這個問題,沒有關(guān)系,請繼續(xù)往下面看,我們開始熟悉J2ME平臺的體系結(jié)構(gòu)。

  J2ME平臺體系結(jié)構(gòu)

  J2ME平臺是由配置(Configuration)和簡表(Profile)構(gòu)成的。配置是提供給最大范圍設(shè)備使用的最小類庫集合,在配置中同時包含Java虛擬機。簡表是針對一系列設(shè)備提供的開發(fā)包集合。在J2ME中還有一個重要的概念是可選包(Optional Package),它是針對特定設(shè)備提供的類庫,比如某些設(shè)備是支持藍(lán)牙的,針對此功能J2ME中制定了JSR82(Bluetooth API)提供了對藍(lán)牙的支持。

  目前,J2ME中有兩個最主要的配置,分別是Connected Limited Devices Configuration(CLDC)和Connected Devices Configuration(CDC)。他們是根據(jù)設(shè)備的硬件性能進行區(qū)分的,例如處理器、內(nèi)存容量等。由于這個標(biāo)準(zhǔn)是在2001年的時候指定的,而現(xiàn)在移動終端的處理能力和內(nèi)存容量發(fā)展很快,假如還按照這個標(biāo)準(zhǔn)來評判可能就不準(zhǔn)確了。 因此我們只是列出標(biāo)準(zhǔn),供讀者參考。本教程將主要講解基于 CLDC的J2ME平臺的相關(guān)內(nèi)容。隨著技術(shù)和硬件設(shè)備的不斷發(fā)展,J2ME開發(fā)網(wǎng)將逐步推出基于CDC的J2ME平臺介紹。

  CDC的硬件參數(shù):

  ·2M以上內(nèi)存。

  ·具有網(wǎng)絡(luò)連接能力,通常為無線網(wǎng)絡(luò)。

  ·需要實現(xiàn)java虛擬機規(guī)范的全部功能。

  ·32位或者64位的處理器。

  CLDC的硬件參數(shù):

  ·512 KB 以下內(nèi)存

  ·有限能源供給(通常使用電池)

  ·有限或非持續(xù)網(wǎng)絡(luò)連接

  ·簡單的用戶界面

  ·16位或者32位的處理器

  從上述的標(biāo)準(zhǔn)中我們不難看出CLDC主要針對那些資源非常受限的設(shè)備比如手機、PDA、雙工尋呼機等。而CDC主要面對那些家電產(chǎn)品,比如機頂盒、汽車導(dǎo)航系統(tǒng)等。簡表是以配置為基礎(chǔ)的,例如Mobile Information Devices Profile(MIDP)就是CLDC上層的重要簡表。與配置的縱向特性不同的是,簡表是橫向的。下圖是J2ME體系結(jié)構(gòu)的框圖:

J2ME中文教程之J2ME技術(shù)概述
J2ME體系結(jié)構(gòu)框圖

  MIDlet應(yīng)用程序的生命周期

  理解J2ME的體系結(jié)構(gòu)并不像想象的那么輕易,我們覺得讀更多的資料幫助也不大,我們直接邁向J2ME開發(fā)也許會對你理解J2ME平臺體系結(jié)構(gòu)這個重要的概念有所幫助。在MIDP中定義了一種新的應(yīng)用程序模型MIDlet,它是被application Management Software(AMS)治理的。AMS負(fù)責(zé)MIDlet的安裝、下載、運行和刪除等操作。在被AMS治理的同時,MIDlet可以和應(yīng)用治理軟件通信通知應(yīng)用治理軟件自己狀態(tài)的變化,通常是通過方法notifyDestroyed()和notifyPaused()實現(xiàn)的

  MIDlet有三個狀態(tài),分別是pause、active和destroyed。在啟動一個MIDlet的時候,應(yīng)用治理軟件會首先創(chuàng)建一個MIDlet實例并使得他處于pause狀態(tài),當(dāng)startApp()方法被調(diào)用的時候MIDlet進入active狀態(tài),也就是所說的運行狀態(tài)。在active狀態(tài)調(diào)用destroyApp(boolean unconditional)或者pauseApp()方法可以使得MIDlet進入destroyed或者pause狀態(tài)。值得一提的是destroyApp(boolean unconditional)方法,事實上,當(dāng)destroyApp()方法被調(diào)用的時候,AMS通知MIDlet進入destroyed狀態(tài)。在destroyed狀態(tài)的MIDlet必須釋放了所有的資源,并且保存了數(shù)據(jù)。假如unconditional為false的時候,MIDlet可以在接到通知后拋出MIDletStateChangeException而保持在當(dāng)前狀態(tài),假如設(shè)置為true的話,則必須立即進入destroyed狀態(tài)。下圖說明了MIDlet狀態(tài)改變情況:



發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 大新县| 扶余县| 霞浦县| 陇川县| 大化| 荣昌县| 扶绥县| 诏安县| 乃东县| 湖北省| 桐乡市| 宁波市| 焉耆| 通城县| 奉新县| 株洲市| 昌图县| 锡林浩特市| 麻江县| 全州县| 绩溪县| 清苑县| 贺州市| 托里县| 平邑县| 大厂| 六安市| 锦屏县| 平果县| 孟津县| 蒙山县| 克山县| 瓦房店市| 沙田区| 房产| 双柏县| 蛟河市| 英山县| 申扎县| 台中市| 方山县|