日期:2014-05-20  浏览次数:20796 次

J2ME浅说
1.J2ME采用模块化的结构
底层是宿主机的操作系统,内部则分为三层, Java Virtual Machine(虚拟机层); Configuration(配置层); Profile(简表层)。J2ME有两类虛拟机:CVM(C虚拟机)和KVM(K虚拟机), CVM功能比KVM功能更为强大; Configuration层:Configuration是J2ME对于嵌入式设备的规范,在这些规范中,定义了设备至少要符合的运算能力、供电能力和内存大小等规范,按照规范一般把嵌入式设备分为CLDC(Connected Limited Device Configuration)和CDC(Connected Device Configuration)两大类。Profile层:这一层对于用户和程序开发人员来说是最常见的。Profile中定义了与特定嵌入式设备紧密相关的扩充类库,这些扩充类库是建立在Configuration所定义的核心类库基础上的,它是架构在Configuration之上的规范。针对移动电话内存小、速度慢和I/O差的特点, J2ME对JVM、Configuration和Profile三层做了特殊的实现。在JVM层,J2ME在手机上移植了KVM(Kilobyte Virtual Machine),只需要几百KB的内存就可以运行;在Configuration层, J2ME规定了CLDC(Connected Limited Device Configuration),它对设备的运算能力和内存大小都有具体的限制。CLDC不支持浮点运算;在Profile层, J2ME规定了MIDP(Mobile Information Device Profile)。MIDP定义了在手机上运行的Java程序的规范,包括应用程序生命周期、各种UI界面组件、支持Record存储数据和HTTP连接等等,这些在CLDC的基础上的附加功能是通过扩充新的Java类库来实现的。
2. M ID let介绍
手机程序其实是完全基于MIDP开发的。使用J2ME的CLDC/MIDP编写的Java程序被称为MIDlet。MIDlet具有良好的兼容性和可移植性。所有基于MIDP的程序的主类都必须是基于MIDlet的。MIDlet是一个Java类,主要实现startApp( )、pauseApp( )、destroyApp()方法,以实现MIDlet程序的状态转换功能。MIDlet在应用程序生命周期中有三种可能的状态,分别是:运行、暂停和退出。MIDlet在移动电话上运行的完整过程,就是一个MIDlet状态转换过程。MIDlet程序运行时,总是从实现java.microedition.midlet的MIDlet接口类的构造方法开始,构造方法执行完一次后就不再重复执行。然后通常是运行startApp()、pauseApp(),这两个方法可以重复多次执行。最后是运行destroyApp()方法,这个方法执行完时就意味整个MIDlet程序运行结束。
具体参见http://www.blogjava.net/landon/archive/2010/03/18/315839.html