J2ME程式優化方法二十條

2021-04-02 03:02:14 字數 1510 閱讀 1502

j2me程式由於其特殊的執行環境限制,所以優化就顯得比較重要,以下是我在學習j2me程式設計所收集的一些技巧和自己的心得。

本文主要是說明j2me平台上的特殊優化方法,與j2se重複的一些技巧就不再贅述了。

1.顯示圖象時確定好你的fps,最好先做幾次小實驗,這樣能讓你在顯示效果和執行速度上有比較好的平衡。

2.gamacanvas.getgraphics()每次都會產生乙個全新的物件,但是對這些物件的操作都是對同乙個graphics,所以還是只取一次供後面使用。

3.讓多個物件使用同樣的***,比如讓主midlet類實現commandlistener和itemstatelistener介面。

5.使用監視工具分析midlet的瓶頸,wtk和各個公司提供的開發包裡都會有,可以找到程式的弱點。如果是在手機上,用timer測試你認為有可以的地方。

6.使用system.gc(),在無線程阻塞的情況下可以有效的緩解記憶體壓力,但是有些公司不是太推薦使用(如nokia).sun的說法也是越低端的機子執行的越慢,總之,慎用吧。

7.用固定的陣列代替使用vector。

8.的優化。考慮使用裝置的規格,可能高解析度的不一定顯示的出來。

9.不用的物件賦值為null,為更快的**

10.用混淆器處理你的類檔案,防止反編譯,還有乙個好的***就是它減小class檔案的大小,因為混淆器往往用較短的字串代替原來的變

量或方法名。

11.若資料太大,可以將資料編碼為字串,執行時解碼,或把資料存為二進位制檔案並與程式打包,用類裝載器的getresourceasstream方法在執行時訪問。

12.使用現有的類,比如你使用了gamecanvas,就不用自己生成off-screen,另外像cldc的profile沒有構造集合類,所以我們可以用內建的hashtable和vector類來實現。

13.用優化軟體jpresto(http://.s5systems.com/jpresto.htm)---沒用過,不過暫且寫上吧。

如果對檔案大小,記憶體限制非常嚴格,這時候就只能用一些非常規的方法了,可能這些方法背離了oo思想,但是多數情況下,它是起到了非常積極的作用的(但是也可能),假如你更在意於程式的維護和擴充套件方面,我建議你還是跳過吧 -_-||

14.把所有資源檔案做成乙個資料檔案。

15.把所有的小檔案做成乙個檔案,在執行時再"切割"開。

16.使用有限的物件導向,因為純粹的oo往往意味著更多的虛方法,更多的層次關係,更多的class

17.生成盡可能少的class,class都有一定的系統開銷。

18.class中生成盡可能少的方法。速度比較:同步方法《介面方法《例項方法《final方法《靜態方法。

19.用final static限定方法可以獲得小幅的速度提高。

20.對資料成員用public限定,來代替get和set方法,不過要注意安全性。

j2me優化可能使你的程式在不同的模擬器,不同的裝置下有不同的執行效果,所以 優化一定要建立在開發裝置的規格上。

以上所列舉的方法不一定在所有midp裝置上都起作用,也不一定都適合每乙個程式,總之,應該根據自身的情況

J2ME程式優化方法二十條

選擇自 lodger007 的 blog j2me程式由於其特殊的執行環境限制,所以優化就顯得比較重要,以下是在學習j2me程式設計所收集的一些技巧和自己的心得。本文主要是說明j2me平台上的特殊優化方法,與j2se重複的一些技巧就不再贅述了。沒用過,不過暫且寫上吧。如果對檔案大小,記憶體限制非常嚴...

j2me程式優化技巧

1 少用字串連線,多用stringbuffer 2 盡量用固定大小的陣列代替使用vector 3 如果可以不使用新class就能實現功能,就不要增加新的class,因為每個class都有一定的記憶體開銷 4 使用有限的物件導向,因為純粹的oo往往意味著更多的虛方法,更多的層次關係,更多的class ...

j2me記憶體優化

out momory 一陣天旋地轉記憶體又溢位了。在手機上這種痛苦經常都有,套一句俗話在手機上用記憶體必須勒緊褲腰帶。雖然現在pc記憶體上g都不奇怪,可是在手機上卻只能以k來記,可能某位同志會馬上跳出來說也有上m的,記住中國還不富大多數手機都是低端手機。寫手機程式讓我彷彿回到了dos時代 自我安慰一...