內存
我們一直在強調,移動信息設備的內存非常小,使用起來應該加倍的珍惜,但是我們卻很少知道這些內存是如何分類的,下面將做詳細的介紹。事實上MIDP設備的內存分為三種,
1.ProgrammeMemory、Heap、persistentStorage。
ProgrammeMemory是移動信息設備分配給MIDletsuite的空間,因為MIDletsuite是以jar文件進行發布的,所以這個文件的大小可以認為是ProgrammeMemory的大小。一些廠商對ProgrammeMemory的最大值是有限制的,例如我的Nokia6108的最大值是64k,超過的話將不能進行安裝。減小MIDletsuite的大小非常重要,一個便捷的方法就是使用混淆器對應用程序進行混淆,這樣可以減小jar文件的大小。在以後的文章中我會談到如何使用Proguard。
Heap是應用程序在運行過程中存放所創建的對象的存儲空間,本地變量和成員變量也是放在Heap上的,MIDP設備中提供的Heap空間大概在幾十k到幾百K。
PersistentStorage的空間是用來實現MIDP應用程序的本地數據持久性存儲的,在RecordManagementSystem從入門到精通中我做了詳細的介紹這裡就不再多說了。
2.ConnectedLimitedDeviceConfiguration
CLDC包括一個Java虛擬機和一系列的基礎類,J2ME的專家組經過對移動信息設備進行硬件抽象後得到他們的特點,然後設計並實現了在移動信息設備上運行的java虛擬機,通常我們把它叫做KVM。在CLDC1.0還同時提供了由java.io、java.lang、javax.microediton.io、java.util組成的基礎類。在CLDC1.1裡面添加了java.lang.ref。
3.MobileInfomationDeviceProfile
MIDP是運行在CLDC基礎之上的,在MIDP中定義了應用程序的生命周期、用戶圖形界面、數據管理系統等子集,從而構建起了J2ME平台。通常,J2ME平台由一個CLDC和一個或者多個Profile構成。