freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

(計(jì)算機(jī)專業(yè))im系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(畢業(yè)論文)(編輯修改稿)

2024-12-11 20:29 本頁面
 

【文章內(nèi)容簡介】 PI 兩部分 。 ( 1) 硬件部分:內(nèi)存包括 128K 供 MIDP 組件使用; 32KB 內(nèi)存供虛擬機(jī)運(yùn)行使用; 8KB內(nèi)存為提供數(shù)據(jù)持續(xù)存儲(chǔ)使用。 ( 2) API部分: 用戶界面的支持,提供類程序包,這個(gè)包定義了用戶借口,事件的處理機(jī)制以及對(duì)繪圖功能的支持。由于每一種手機(jī)的顯示裝置和輸入裝置差異性很大,因此不能沿用傳統(tǒng)的 AWT和 SWING 來 進(jìn)行 UI界面的設(shè)計(jì)。 網(wǎng)絡(luò)的支持,提供了必須的通訊協(xié)議包,包括 HTTP, COMM,SOCKET 等常用的通信協(xié)議。 數(shù)據(jù)持續(xù)存儲(chǔ)的支持 ,提供了簡單有效的機(jī)制來永久儲(chǔ)存數(shù)據(jù)的包,它就是 RMS,它相當(dāng)于一個(gè)小型的數(shù)據(jù)庫,可想而知它的意義和用途有多大。 游戲功能的支持 ,最重要的是提供了快速開發(fā)游戲的 API,為開發(fā)游戲大大縮減了周期,這也是 JAVA 開發(fā)手機(jī)游戲的熱門之處。 MIDP 在功能和設(shè)計(jì)方面大大不如 ,它支持的功能比較少 ( 1) 顯示工具箱 。 ( 2) 用戶輸入方法 。 ( 3) 持久性數(shù)據(jù)存儲(chǔ)(使用簡單的面向記錄 的數(shù)據(jù)庫模型) 。 ( 4) 基于 HTTP 的網(wǎng)絡(luò) 。 JSR37 中定義了 MIDP 標(biāo)準(zhǔn)。 MIDP 于 2020 年 11 月正式發(fā)布, MIDP 的推出在一定意義上增強(qiáng)了 Java ME 7 的功能,主要體現(xiàn)在如下幾個(gè)方面。 ( 1) Media 音頻子系統(tǒng)填補(bǔ)了 MIDP 不支持聲音播放的空白。 ( 2)聯(lián)網(wǎng)能力增強(qiáng),可以支持 TCP/IP 甚至是 UDP 層的通信。 ( 3) 加強(qiáng)對(duì)游戲的支持,縮短游戲的開發(fā)周期。 ( 4) Media 音頻子系統(tǒng)填補(bǔ)了 以前 不支持聲音播放的 功能 JSR118 中定義了 MIDP 標(biāo)準(zhǔn)。 MIDP 是近期出來的,由于 出來 不久 ,具體有哪些拓展也不是很清楚,本人可以列舉一個(gè)比較突出的更新,那就是 UI 界面的相關(guān)組件得到了很好的完善 ,支持多級(jí)菜單(高級(jí) API繪圖工具) ,在開發(fā)手機(jī)應(yīng)用軟件更加便捷,所以開發(fā)諸如手機(jī) ,這樣的軟件更是如虎添翼。 JPOLISH 的簡介 j2mepolish 是德國的一個(gè) 開源框架 , 它的出現(xiàn)可以說給 J2ME 開發(fā)帶來了福音 ,它的強(qiáng)大之處體現(xiàn)在 高移植,高效率,高級(jí)的 UI界面 和預(yù)處理等幾個(gè)強(qiáng)大的功能上 。 JPOLISH 的 特色 經(jīng)過使用及介紹, j2mepolish 具有以下特色 。 預(yù)處理( Preprocessing) j2mepolish 的 預(yù)處理指令( Preprocessing Directives) 。 例如代碼 。 //if {test} (is test!)。 //else (is not test!)。 //endif ?? 在 編譯工具 中執(zhí)行 ant emulator” 時(shí),運(yùn)行到這段代碼的時(shí)候就會(huì)輸出 is test !,因?yàn)檫@里 {test}的值為 true。 直接執(zhí)行 ant, {test}值為 false,則會(huì)輸出 is not test !(這是因?yàn)樵?配置文件 中, 節(jié)點(diǎn) target 為 emulator時(shí),把 test 設(shè)為 true, 所以檢測到這的時(shí)候,會(huì)進(jìn)行相應(yīng)的處理 ) 這樣的好處在于可以降低模 塊的耦合。 用這種預(yù)處理的方式 , 好處在于它可以兼容各個(gè)手機(jī)開發(fā)商的 API,例如 手機(jī)支持MMAPI,我們則播放一段 music( 對(duì)本地或者網(wǎng)絡(luò)不受影響 ) 8 //if Player player = (url)。 ()。 ()。 //endif 如果手機(jī)不支持 MMAPI,則這段不會(huì)被包含到 jar 中,至于 j2mepolish 如何知道你的手機(jī)是否支持 MMAPI, 你也許會(huì)問這種區(qū)別會(huì)是怎么檢測出來的,答案很簡單,它根據(jù)手機(jī)的型號(hào),并結(jié)合自身的參數(shù)來進(jìn)行必要的選擇,所以你不必?fù)?dān)心,因此而帶來的差異性。 也正是由于這種性質(zhì),在所有的編譯通過以后它會(huì)產(chǎn)生不同的 JAR 包,適用于不同的手機(jī),這樣就大大縮減了手機(jī)開發(fā)的周期。 j2mepolish 的預(yù)處理所帶來的便利 遠(yuǎn)不只這些的,還有對(duì)于 UI 設(shè)計(jì)的支持,調(diào)試輸出等; 手機(jī)數(shù)據(jù)庫( Device Database) j2mepolish 包含了 所有當(dāng)前流行的手機(jī)型號(hào)它把這些信息全部存儲(chǔ)在一個(gè) XML 文件里面 , 在生成 JAR 包時(shí)它會(huì)根據(jù)當(dāng)前手機(jī)型號(hào)與數(shù)據(jù)庫匹配 , 所以它的作用非常重要。例如在 ,里面包括 很多手機(jī)的參數(shù) , 能否 支持文件操作,是否支持媒體訪問等等。 所以 在這樣一個(gè)強(qiáng)大的功能下 , j2mepolish 就可以做到那種一份代碼兼容多個(gè)機(jī)型的功能。 高級(jí) UI j2mepolish 帶有一套很完備的高級(jí) UI, 在 設(shè)計(jì) UI 界面時(shí)你甚至可以直接拖拽 , 唯一的區(qū)別是它的樣式完全是用 CSS 來控制 , j2mepolish 的 UI 別出一格地使用了 CSS 來控制外觀,可以像設(shè)計(jì)網(wǎng)頁那樣來設(shè)計(jì) , 但必須注意它與常規(guī)的 CSS是有一定的區(qū)別的, 例如 .myStringItem { texteffect: shadow。 textshadowcolor: black。 /* = default */ layout: horizontalcenter | horizontalexpand。 font { face: proportional。 size: large。 style: bold。 color: eef1e5。 } background { type: simple。 9 color: ffffffff。 } } 應(yīng) 用 j2mepolish 的預(yù)處理 (Preprocessing)來運(yùn)用這個(gè)樣式 。 //style StringItem StringItem myString = new StringItem(null,J2ME Polish)。 效 果 。 碼中使用了 “//style” 來引用 css 中的 “ StringItem” 樣式,這樣的好處是代碼中不用出現(xiàn)關(guān)于 UI 的設(shè)計(jì)語句,保持了代碼的整潔,同時(shí)開發(fā)人員可以把精力注重在邏輯設(shè)計(jì)上,另外,更換 UI 主題也就是更換 css,十分方便。 資源文件 按照以往的經(jīng)驗(yàn),如果在源文件中出現(xiàn)了中文,我們就需要轉(zhuǎn)換成 unicode再 hardcode到源文件中,或者使用 native2ascii 來轉(zhuǎn)換, j2mepolish 使用了類似 struts 的方式,可以將中文放在一個(gè)文件內(nèi),然后在源文件中直接引用 。 其它 j2mepolish 提供了一個(gè) html browser,盡管對(duì) html tag 的支持不多,但可以自行繼承來擴(kuò)展支持更多的 tag,j2mepolish 還提供了 RSS browser,感覺上還不錯(cuò);另外,j2mepolish 還對(duì) RMS的操作進(jìn)行了封裝,省去了轉(zhuǎn)換上的麻煩,使開發(fā)便利不少。 [17] SOCKET 傳送機(jī)制 SOCKET 的 形象描述 在 JAVA 中基于 TCP 協(xié)議實(shí)現(xiàn)網(wǎng)絡(luò)通信的協(xié)議有兩個(gè),在客戶端的 Socket 類和在服務(wù)器端的 ServerSocket 類,它的功能就是建造一個(gè)服務(wù),并通過監(jiān)聽隨時(shí)了解客戶端的連接請(qǐng)求 Accept() 。 當(dāng)需要建立網(wǎng)絡(luò)的連接時(shí)候,必須有一臺(tái)機(jī)器 運(yùn)行一個(gè)程序,隨時(shí)等候連接而另一端的程序則 發(fā)出連接請(qǐng)求,這一點(diǎn)同電話系統(tǒng)類似 于 必須有一方撥打電話,而另一方必須等候電話的連通。 具體建立連接的過程如下 : ( 1) 先在服務(wù)器上建立一個(gè) ServerSocket 的服務(wù)器,用來隨時(shí)監(jiān)聽客戶端發(fā)出的連接請(qǐng)求。 ( 2) 當(dāng)客戶端需要連接時(shí)候,相應(yīng)的必須要有一個(gè) Socket 的實(shí)力對(duì)象,并發(fā)出連接請(qǐng)求,其中 HOST 函數(shù)指明該主機(jī)的 IP 地址 ,Port 則是另一個(gè)參數(shù)端口號(hào) 。 ( 3) 服務(wù)器通過相應(yīng)的接受函數(shù),接受到客服端的請(qǐng)求后便會(huì)通過接口建立一個(gè)通信 10 的通道,具體的就是生成一個(gè)相應(yīng)的輸入輸出流的數(shù)據(jù)流這樣就可以進(jìn)行 CS 模式的通信了。 ( 4) 值得注意的是服務(wù)器和客戶端的通信就是建立在輸入輸出流上面的所以當(dāng)終止同心的時(shí)候必須要觀點(diǎn)相應(yīng)的 接口。 打電話的時(shí)候,呼叫方必須事先通知所需撥打的號(hào)碼,而程序建立網(wǎng)絡(luò)連接時(shí)也同樣需要知道地址和主機(jī)名稱。另外,網(wǎng) 絡(luò)連接還需要一個(gè)端口號(hào),連接到正常的主機(jī)之后,需要對(duì)連接確認(rèn)特定的口令。某些情況下,還需要使用一個(gè)擴(kuò)展號(hào)碼與網(wǎng)絡(luò)系統(tǒng)連接,所以相應(yīng)的要有一個(gè)端口用于連接計(jì)費(fèi)程序。 所以連接的地址和端口都不能隨便的進(jìn)行定義應(yīng)該仔細(xì)的參照標(biāo)準(zhǔn)后進(jìn)行歸納。 在 Inter 上有很多 類似于 這樣的 服務(wù)器 ,這些主機(jī)一般運(yùn)行了多個(gè)服務(wù)軟件,同時(shí)提供幾種服務(wù)。每種服務(wù)都打開一個(gè) Socket,并綁定到一個(gè)端口上,不同的端口對(duì)應(yīng)于不同的服務(wù)。 Socket 正如其英文原意那樣, 像 一個(gè)多孔插座。一臺(tái)主機(jī)猶如布滿各種插座的房間,每個(gè)插座有一個(gè)編號(hào),有 的插座提供 220 伏交流電, 有的提供 110 伏交流電,有的則提供有線電視節(jié)目。 客戶軟件將插頭插到不同編號(hào)的插座,就可以得到不同的服務(wù)。 開發(fā)一個(gè) SC 模型的 基本原理 服務(wù)器,使用 ServerSocket 監(jiān)聽指定的端口, 端口號(hào)是由 16 位整數(shù)組成,即 0 到65535 之間。實(shí)際應(yīng)用中,前 1024 個(gè)端口號(hào)已經(jīng)預(yù)先定義了一些特殊的服務(wù),因此一般不能使用,除非想同這些服務(wù)器進(jìn)行連接。在兩 個(gè)程序連接之前,彼此之間必須達(dá)成一致,即由客戶端負(fù)責(zé)初始化連接,而服務(wù)器端隨時(shí)等候請(qǐng)求。只有客戶端和服務(wù)器端指定 端口號(hào)一致時(shí)候才能建立連 接。如果系統(tǒng)中兩個(gè)程序所用到的端口號(hào)沒有保持一致的話連接是不會(huì)成功的。 Socket 具體的連接流程圖 如下 。 圖 Socket 連接 流程 11 每個(gè) Server 端都擁有一個(gè)端口號(hào),一臺(tái)機(jī)器上如果運(yùn)行多個(gè)服務(wù),則可能對(duì)應(yīng)多個(gè)端口號(hào)。通信結(jié)束后,兩端分別關(guān)閉對(duì)應(yīng)的 Socket 接口,而不影響其他的端口。所以只要注意這點(diǎn)建立一個(gè)簡單的連接例子是不成問題的。 一個(gè) Socket意味著為一個(gè) Socket 數(shù)據(jù)結(jié)構(gòu) 創(chuàng)造 存儲(chǔ)空間。 Socket 執(zhí) 行體為你管理描述符表。兩個(gè)網(wǎng)絡(luò)程序之間的一個(gè)網(wǎng)絡(luò)連接包括五種信息:通信協(xié)議、本地協(xié)議地址、本地主機(jī)端口、遠(yuǎn)端主機(jī)地址和遠(yuǎn)端協(xié)議端口。 Socket 數(shù)據(jù)結(jié)構(gòu)中包含這五種信息。 Socket 在測量軟件中的使用也很廣泛 。 具體應(yīng)用 使用 Socket 傳輸 簡要 流程圖 (如圖 ) 圖 傳輸 流程 ?? public Connection(MenuMidlet MIdlet) { MyMIDlet = MIdlet。 url = url4 = } 以上是 Socket 的連接字串指向連接的目標(biāo)地址。 public boolean initNet(String inputStr) { 12 try { // 打開兩個(gè)連接 (一個(gè)上一個(gè)下 ),并使它們聯(lián)結(jié) oneConn = (StreamConnection) (url)。 oneOutputStream = ()。 oneInputStream = ()。 SendOneData(inputStr)。 // 通知服務(wù)端這是第一個(gè)連接 (this is send 99 OK)。 = (getOneData())。 twoConn = (StreamConnection) (url)。 twoOutputStream = ()。 twoInputStream = ()。 SendTwoData(98 + )。 // 通知服務(wù)器這是該手機(jī)的第二
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1