亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? j2me開發(fā)的一些體會.txt

?? J2ME開發(fā)的一些體會文章
?? TXT
字號:


J2ME方面開發(fā)的資料,確實是少之又少,一般給新手推薦的都是王森先生的《PDA與手機開發(fā)入門》一書,然而該書其實并不適合新人閱讀,該書的前幾章花了很大篇幅來講解命令行調試J2ME程序的方法和很多要點,其實這些東西,作為一個初級的J2ME開發(fā)者來說,完全沒有必要學習和掌握,反而只會給自己平添很多負擔?,F(xiàn)在做J2ME開發(fā),大多都有了IDE(集成開發(fā)環(huán)境),比如JB,Eclipse什么的,就算是用最簡單的WTK,也不需要進行path的配置等操作,所以初學者完全可以跳過這些內容,直接上手。我的認為,做程序開發(fā),重在實踐經驗,而不是理論研究,因此,新人完全可以直接從J2ME的程序流程入手,直接進入,而不需要去了解太多基本概念,比如什么是API,什么是MIDP,什么是JDK等等。這些東西我到現(xiàn)在也不是很清楚,但并不影響我進行開發(fā),我是講究實用主義的,因此,本文的基調就在于講述一些實用的開發(fā)方法。另外首先要聲明:本文中的一切開發(fā)調試都是在WTK環(huán)境下進行的,請讀者注意。

一.學習J2ME需要的基礎知識J2ME本身是Java語言的一部分,因此,對Java語言有一定了解是必要的,而Java語言本身是面向對象編程的一種語言,因此,對類與對象的概念要有必要的了解,而這些內容在本文中就不進行介紹了。另外,本文行文中對API的介紹很簡略,因此,讀者應該自己多查閱API中的相關內容。

二.J2ME開發(fā)環(huán)境簡介J2ME的開發(fā)環(huán)境如前文所述,目前主要有JB,Eclipse,WTK三種方式,其中前面兩者都是集成開發(fā)環(huán)境,在編程上比較方便,有智能聯(lián)想等功能,而WTK相對只提供了手動編譯和打包,并且沒有Debug功能。但WTK不需要多余的配置,對各種模擬器可以說是即插即用,而且在WTK下的程序目錄簡潔明了,方便查詢。這幾種開發(fā)環(huán)境各有長短處,所以大家可以自己選擇,不過對新手來說,還是建議采用WTK,因為剛接觸J2ME開發(fā),與其把時間花在配置上,還不如花在編程上。

三.J2ME程序流程我的感覺,每門語言都有自己的固定格式,就跟寫文章的幾要素一樣,總有開頭,結尾等等。而了解一門語言的格式,是學習這門語言最先要掌握的內容。如果把程序流程比做是一個管道工程的話,那么每門語言里都有一個管道的入口,在J2ME里,這個入口就是MIDlet類,這個類一般也稱為J2ME的主類,每個程序,都有一個或多個固定的主類,在這里,我們只談一般的情況,即只有一個MIDlet主類的情況,大家看API即可知道,MIDlet類有幾個固定方法,startApp(),pauseApp(),destroyApp(),這些方法就像是管道工程(以下的講述里,我都把編程比作是管道工程)中的幾個關鍵閥門,一個J2ME程序啟動后,便先經歷MIDlet的構造方法,然后進入startApp()方法,當有特殊情況掛起的時候,便會進入pauseApp方法,當程序結束時,便經由destroyApp方法退出。一個J2ME程序可以沒有其他類,但不能沒有MIDlet類,只要有一個完整的主類,便是一個完整的J2ME程序。比如非常精典的"HelloWorld",便只有一個MIDlet。

我覺得,J2ME實際上是一個很標準的順序流程語言,J2ME中沒有真正的多線程,很多情況下,一個J2ME程序的運行,我們都可以對他的流程進行完全的跟蹤。這在調試方面是非常方便的。在這里還要解釋一點,J2ME程序中,屏幕對象是一個比較重要的對象,你的所有操作,你所要表達的意思,都需要在屏幕上描繪出來,因此,對屏幕的操作也是最基本和最重要的一個操作,因此,J2ME程序的操作其實就是對Display和Display上的Displayable(包括Form,TextBox,List,Canvas等等)對象進行控制。也就是說,讓程序在合適的時候,把需要的Displayable顯示在屏幕上。使用的方法,即是Display.setCurrent()方法。

在屏幕對象的操作上,我要解釋一下,J2ME默認的屏幕只有一個,即是當前屏幕,所有操作都是對當前屏幕進行操作,因此,當你在主類中將一個Canvas對象設置為當前屏幕后,則主類已經處于脫屏狀態(tài),脫屏狀態(tài)下的對象無法進行直接操作。這一點需要注意。所有外界的操作均只能作用于當前屏幕上顯示的Displayable對象,無論是Form,List,或者是Canvas。此時對脫屏類的操作只能通過靜態(tài)方法或者是該類的一個實例來進行。J2ME的游戲中最簡單的一種游戲流程是這樣,即一個主類和一個Canvas類,主類入口處定義一個Canvas對象,并且此Canvas對象繼承一個Runnable接口,再定義一個基于此對象的線程,然后將此Canvas對象設為當前屏幕對象,并啟動線程,即用線程的start()方法,啟動線程后,Canvas里的run方法便開始運行,而run方法通常要用repaint()方法來刷屏,因此流程就是按paint()->run->paint().....這樣的過程往復,其中如果還有鍵盤輸入,則keyPressed()等方法就穿插在中間?;旧螶2ME的程序就是按這樣的流程來走,因此在開發(fā)和調試中只要對這個流程進行必要的跟蹤就可以了。

四.J2ME中常用的類J2ME中常用的類有MIDlet,F(xiàn)orm,List,Canvas,String,Command,Graphics等等。其中Graphics作為游戲開發(fā)中的核心類,自然需要熟練的掌握。在Graphics中如下的重要方法需要掌握:setColor(int 設置的顏色)setFont(Font 設置的字體)drawRect(int 起點坐標x,int 起點坐標y,int 寬,int 高)fillRect(int 起點坐標x,int 起點坐標y,int 寬,int 高)drawImage(Image 要畫的圖形對象,int 起點坐標x,int起點坐標y,int 基點類型)drawLine(int 起點坐標x,int起點坐標y,int 終點坐標x,int 終點坐標y)drawString(String 要寫的字符串, int 起點坐標x,int起點坐標y,int 基點類型)在這里要說明一下什么是基點類型,基點是標志你設置的起點坐標在整個要繪制的對象(不論是圖像還是文字)中的位置,如左上,右下,正中間等等。常用的值有0或20:左上,17:正中間,24:右上,36:左下,40:右下。除此之外,還有幾個重要方法addCommand,removeCommand,這兩個方法是對Command的添加和取消的操作,很常用。而談到Command,自然就要涉及到commandListener這個接口,按鈕的監(jiān)聽需要通過這個接口來進行,也就是要重載接口中的 commandAction()方法。不過在使用這個接口的時候,不要忘了對當前的對象設置setCommandListener(this)。另外,對于String類,substring方法應該掌握而對于Form這些高級控件,可用方法不多,看看API即可。

五.J2ME中的線程J2ME中的線程是Thread類,而實現(xiàn)線程有兩種方法,一種是繼承Runnable接口,一種是Timer和TimerTask。而不管是哪種線程,其本質都是在運行其中的run方法。在這里要注意,Runnable接口的run方法和TimerTask的run方法又是不同的,因為他們的運行機制不同。Runnable接口是靠線程的休眠或等待來實現(xiàn)線程的刷新,而TimerTask是按照事先給定的時間間隔來自動刷新。對Runnable接口,一旦run方法結束后,則線程就結束了,因此Runnable線程里的run方法要寫成循環(huán)方式,一般是while(isRunning)的形式,要結束的時候把isRunning設為false,而TimerTask則不用,因為他是定時刷新。但這樣也有個問題,就是如果TimerTask的run方法寫得過長,執(zhí)行時間超過了設置的線程間隔時間,就會出現(xiàn)線程重疊的情況。線程重疊會造成諸如游戲速度突然加快等Bug。在Runnable接口定義的線程里,有兩種等待方法,一種是wait,一種是sleep,如果使用wait方法,則要注意在線程run方法里,用synchonized標志符將該線程設置為同步鎖定狀態(tài),否則會出現(xiàn)java.lang.IllegalMonitorStateException異常,大致意思是線程當前請求的監(jiān)視器對象不能響應,因為被別的線程占用了。線程在J2ME里非常重要,一切動態(tài)效果(當然這是游戲的前提)都是通過線程來操作,因此,對線程的控制是值得研究的一個問題。如何優(yōu)化代碼,使線程能夠在足夠短的間隔時間內正常刷新,換言之,這就是大家討論的FPS問題。程序優(yōu)化做得好,則線程間隔時間可以足夠短,使得FPS可以足夠高,游戲的流暢度當然就越高。

六.J2ME開發(fā)中的好習慣

1. 多寫注釋,完備的注釋不管是對你自己,還是對別人,都是很有好處的,在調試中也會起很大的幫助。
2. 在重要流程的各個環(huán)節(jié)設置一些監(jiān)聽點,其實很簡單,就是用symstem.out.println()來輸出一些標志符號就可以了,這樣可以監(jiān)聽你的程序在運行的時候,走到哪一步。
3. 不要寫太多的類,盡量整合資源,不用的變量或者方法,盡量去掉。
4. 熟練掌握各種常見的異常,不要太依賴于問別人和翻書,這些應該是一個合格的程序員應該熟練于心的東西。
5. 對不熟悉的類,應該多寫小代碼來實驗其用法,別人講的永遠不如自己研究出來的結果牢靠。

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人成精品久久久久久| 91免费观看视频在线| 亚洲国产视频一区| 亚洲欧美在线aaa| 国产视频一区在线观看| 欧美tk—视频vk| 日韩女优毛片在线| 3atv一区二区三区| 欧美高清性hdvideosex| 欧美日韩国产成人在线91| 在线视频欧美精品| 在线观看av一区二区| 欧洲亚洲国产日韩| 色菇凉天天综合网| 欧洲国内综合视频| 欧美日韩精品三区| 在线播放91灌醉迷j高跟美女| 欧美亚洲国产一区在线观看网站| 日本乱码高清不卡字幕| 日本丶国产丶欧美色综合| 欧亚洲嫩模精品一区三区| 91成人免费电影| 在线亚洲人成电影网站色www| 色吊一区二区三区| 69堂精品视频| 欧美精品一区二区三区高清aⅴ| 欧美精品一区二区三| 国产精品网友自拍| 亚洲欧美另类久久久精品| 亚洲精品国产一区二区三区四区在线| 亚洲狠狠丁香婷婷综合久久久| 亚洲一区二区av电影| 婷婷丁香久久五月婷婷| 美国三级日本三级久久99 | 成人三级伦理片| 国产精品99久久久久久宅男| 成人av电影在线播放| 99精品久久免费看蜜臀剧情介绍| 色综合久久久久综合体| 欧美二区乱c少妇| 亚洲精品一线二线三线| 亚洲欧洲韩国日本视频 | 成人免费看黄yyy456| 色婷婷综合视频在线观看| 欧美丰满嫩嫩电影| 久久日一线二线三线suv| 国产精品麻豆久久久| 亚洲午夜电影在线| 精油按摩中文字幕久久| 成人国产免费视频| 欧美日韩国产在线观看| 久久综合久久综合九色| 亚洲精品你懂的| 另类小说图片综合网| 99久久亚洲一区二区三区青草 | 欧美tk—视频vk| 国产精品不卡在线| 天天色天天操综合| 成人一区在线看| 欧美精品aⅴ在线视频| 国产日产亚洲精品系列| 亚洲第一精品在线| 国产一区二区网址| 欧美视频你懂的| 久久九九99视频| 午夜婷婷国产麻豆精品| 国产白丝网站精品污在线入口| 91国偷自产一区二区开放时间 | 欧美色综合影院| 久久免费视频色| 亚洲国产日韩一级| 成人一级视频在线观看| 在线综合亚洲欧美在线视频| 国产精品美女久久久久久久久 | 久久蜜桃av一区二区天堂| 亚洲一级二级三级在线免费观看| 欧美电影免费观看高清完整版在线 | 国产成人亚洲精品青草天美| 一本大道av伊人久久综合| 日韩一区国产二区欧美三区| 中文字幕成人av| 亚洲成av人片一区二区梦乃| 午夜欧美电影在线观看| 91免费在线播放| 日韩欧美电影一二三| 亚洲精品成人天堂一二三| 久久www免费人成看片高清| 97se狠狠狠综合亚洲狠狠| 日韩欧美国产一区在线观看| 亚洲男同性恋视频| 蜜桃视频一区二区三区在线观看 | 日韩一区二区电影网| 一区视频在线播放| 精品综合久久久久久8888| 欧美在线免费观看亚洲| 国产清纯美女被跳蛋高潮一区二区久久w| 亚洲欧洲综合另类在线| 精品一区二区在线观看| 精品视频色一区| 中文字幕精品—区二区四季| 青青草97国产精品免费观看 | 精品奇米国产一区二区三区| 午夜av一区二区三区| 99久久精品免费看国产免费软件| 精品国产伦一区二区三区观看体验| 亚洲图片一区二区| 99精品久久免费看蜜臀剧情介绍| 日韩激情在线观看| 欧美日韩一区久久| 一区二区三区在线视频免费观看| 久久99精品国产麻豆不卡| 欧美高清www午色夜在线视频| 最近中文字幕一区二区三区| 国产成人一区在线| 国产色爱av资源综合区| 久久91精品久久久久久秒播| 欧美调教femdomvk| 一区二区三区资源| 91网站视频在线观看| 1024国产精品| gogogo免费视频观看亚洲一| 国产精品视频看| 91色综合久久久久婷婷| 国产精品久久久久久久久免费樱桃| 国产老肥熟一区二区三区| 精品成人佐山爱一区二区| 理论片日本一区| 精品少妇一区二区| 久久99国内精品| 中文字幕欧美区| 成人亚洲精品久久久久软件| 国产午夜亚洲精品理论片色戒| 国产一区二区在线观看视频| 久久久久久久久久久久久久久99 | 国产福利91精品| 国产日韩欧美a| 成人精品在线视频观看| 国产拍揄自揄精品视频麻豆| 国产91精品在线观看| 国产精品久久久久桃色tv| 不卡电影一区二区三区| 亚洲日本在线a| 色先锋久久av资源部| 一区二区三区久久| 欧美日韩电影一区| 日本sm残虐另类| 精品99一区二区三区| 国产成人精品亚洲午夜麻豆| 一区二区三区在线高清| 欧美日韩激情一区二区| 美女久久久精品| 欧美国产日韩精品免费观看| 99精品欧美一区二区三区小说 | 在线不卡免费欧美| 久久精品国产99国产精品| 久久精品人人做人人综合| 成人一区二区在线观看| 国产精品国产三级国产aⅴ入口 | 蜜臀av一区二区| 精品国产亚洲在线| 91免费小视频| 视频在线观看91| 久久久久亚洲蜜桃| 一本大道av一区二区在线播放| 三级不卡在线观看| 久久亚洲精品国产精品紫薇| 欧美性猛交一区二区三区精品| 日本亚洲最大的色成网站www| 国产精品国模大尺度视频| 欧美一区二区三区四区视频| 国产福利电影一区二区三区| 一区二区三区久久| 中文字幕欧美日本乱码一线二线 | 久久新电视剧免费观看| www.激情成人| 毛片基地黄久久久久久天堂| 国产精品乱人伦| 欧美美女激情18p| 国产99一区视频免费| 香蕉久久一区二区不卡无毒影院 | 亚洲日本在线视频观看| 久久品道一品道久久精品| 日本高清免费不卡视频| 久久99这里只有精品| 国产精品第四页| 日韩免费一区二区| 一本色道久久综合精品竹菊| 国产成人精品一区二区三区网站观看| 亚洲综合视频在线观看| 久久这里只有精品6| 欧美最新大片在线看| 国产精品伊人色| 亚洲日本青草视频在线怡红院| 久久精品亚洲一区二区三区浴池| 色综合中文字幕国产| 久久国内精品视频| 亚洲综合丝袜美腿| 国产精品视频麻豆| 日韩一区二区三区观看| 在线电影欧美成精品|