J2ME编程中的几个重要概念介绍

内容摘要
我们都知道,Java ME 以往称作J2ME(Java Platform,Micro Edition),是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。它
文章正文

我们都知道,Java ME 以往称作J2ME(Java Platform,Micro Edition),是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。它和Java SE、Java EE一起构成Java技术的三大版本,并且同样是通过JCP(Java Community Process)制订的。

J2ME平台中有几个重要的概念,例如内存、CLDC、MIDP等。初学J2ME往往对这些概念理解不深,甚至出现偏差。本文的目的在于对J2ME中的相关重要概念进行阐述。

1. 内存

我们一直在强调,移动信息设备的内存非常小,使用起来应该加倍的珍惜,但是我们却很少知道这些内存是如何分类的,下面将做详细的介绍。事实上MIDP设备的内存分为三种,Programme Memory、Heap、persistent Storage。

Programme Memory是移动信息设备分配给MIDlet suite的空间,因为MIDlet suite是以jar文件进行发布的,所以这个文件的大小可以认为是Programme Memory的大小。一些厂商对Programme Memory的最大值是有限制的,例如我的Nokia 6108的最大值是 64k,超过的话将不能进行安装。减小MIDlet suite的大小非常重要,一个便捷的方法就是使用混淆器对应用程序进行混淆,这样可以减小jar文件的大小。在以后的文章中我会谈到如何使用Proguard。

Heap是应用程序在运行过程中存放所创建的对象的存储空间,本地变量和成员变量也是放在Heap上的,MIDP设备中提供的Heap空间大概在几十k到几百K。

Persistent Storage的空间是用来实现MIDP应用程序的本地数据持久性存储的,在Record Management System从入门到精通中我做了详细的介绍这里就不再多说了。

2. Connected Limited Device Configuration

CLDC包括一个Java虚拟机和一系列的基础类,J2ME的专家组经过对移动信息设备进行硬件抽象后得到他们的特点,然后设计并实现了在移动信息设备上运行的java虚拟机,通常我们把它叫做KVM。在CLDC1.0还同时提供了由java.io、java.lang、javax.microediton.io、java.util组成的基础类。在CLDC1.1里面添加了java.lang.ref。

3. Mobile Infomation Device Profile

MIDP是运行在CLDC基础之上的,在MIDP中定义了应用程序的生命周期、用户图形界面、数据管理系统等子集,从而构建起了J2ME平台。通常,J2ME平台由一个CLDC和一个或者多个Profile构成。

希望通过以上内容的介绍,让你能更好的应用J2ME平台。


代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!