J2ME下的手机游戏的优化
生活随笔
收集整理的這篇文章主要介紹了
J2ME下的手机游戏的优化
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
手機游戲的優化
???? waterLayer=newTiledLayer(50,200,Image.createImage("/res/backg.png"),32,32);?
把所有對象的初始化放在構造函數中是理所當然的,大多數人通常的做法是把當前邏輯所要用到的資源全部初始化完畢。但是很大一部分的內存溢出都是發生在構造函數中,內存使用的高峰期都是在構造函數中,避開這個高峰期就能有效地防止溢出,所以程序匯總對于變量的初始化盡量在第一次調用時進行。 Java代碼訪問成員變量比局部變量所需的時間更長。其原因和兩種變量的內存如何訪問有關。實際上,這意味著在性能關鍵的時候,你應該使用局部變量而不是成員變量。例如有一個循環重復訪問的成員變量,那么,應該考慮在開始循環之前把這個成員變量存儲到一個局部變量中。下面是游戲中在一個循環中訪問成員變量: ? for(int?i=0;i<MAX_BP;i++){?
????????????????????????????????if(bigPlane[i].getY()>downLimit-bigPlane[i].getHeight())?
??????????????????????????????????bigPlane[i].setVisible(false);};?
???????可以看到,bigPlane對象的成員變量在循環中被訪問了MAX_BP次。這段代碼的一種快速優化包是把bigPlane[i].geyY設置給一個局部變量,然后在循環中訪問這個局部變量,可以在for循環之前定義局部變量String a[],然后在循環中用a[]代替bigPlane[i].getY。 ⒋???減少內存的使用 ???????在很多時候,手機內存的限制比設備的有限處理能力的限制要顯著的多,因此盡可能地減少手機游戲的內存使用顯得及其重要,可以利用一些實際的開發方法來減少一個游戲MIDlet所需的內存。一般情況下,對于減少內存的使用所用的方法是使用對象時重用對象。 ????????對象重用就是重新使用已有的對象,而不是創建一個新的對象。這種方法只有在需要重復使用相同類的對象時才奏效。對象重用避免了不必要的內存分配。例如如果創建一個對象然后終止使用它,java垃圾回收器最終會釋放分配給它的內存。如果需要另一個相同的類型的對象并且創建了新的,對象所需要的內存會自動重新分配,那么,可以把最初的對象重新初始化而不再創建一個新的,這要也就重用了對象。
本文轉自 gaochaojs 51CTO博客,原文鏈接:http://blog.51cto.com/jncumter/187893,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的J2ME下的手机游戏的优化的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C和C++的区别 04.函数重载
- 下一篇: 摩卡业务服务管理 全面彰显强大产业推动优