通过对J2ME的初识,开始了J2ME之旅。
J2ME(Java 2 Micro Edition),是SUN公司推出的在移动设备上运行的微型版Java平台,目前最常见的移动设备包括智能手机,掌上数据助理(PDA),以及各类信息终端等等。
由于移动终端的种类繁多,而且不同设备的运算能力存在很大的差异,不像在Windows,Linux和Unix桌面系统中,只需使用相应的JVM虚拟机即可运行可移植性的JAVA程序,所以J2ME并不单是一个简单的微型版的虚拟机JVM。在实际中,为了能满足各种各样的微型移动设备上的环境需求,SUN公司定义了一系列的针对不同类型设备的规范,因此,J2ME平台即是一个规范的集合。
目前最重要的移动终端就是移动手机,本文主要来讨论一下移动手机相关的J2ME规范。
一、Configuration
什么叫Configuration?SUN公司按照不同的设备,根据他们的计算能力分为CLDC(Connected Limited Device Configuration)和CDC(Connected Device Configuration)两种类型,而这两种Configuration都是分别针对设备的软硬件环境而定义的,例如CLDC1.0版本即定义了设备的内存大小为64-512k之间,如果设备支持CLDC1.0,那么它就必须严格满足CLDC1.0中的定义。
CLDC1.0规范只是针对运算能力非常小的移动设备而定义出来的,一次该规范只支持做整数运算,而无法支持做浮点数的运算,在早期的大部分Java手机都只能支持CLDC1.0。
与CLDC1.0不同的是,CLDC1.1增加了浮点数字运算能力,在任何支持CLDC1.1的移动设备上,都可以使用float和double类型的浮点数变量。目前的很多Java手机都能支持CLDC1.1。
另一种规范是CDC,CDC是针对相对拥有比较强的运算能力的移动设备而定义的,如PPC等,在CDC平台中的虚拟机JVM可以基本上和一般桌面系统中的JVM很接近了,但是可以使用的Package任然大大少于J2SE中的包,支持CDC的高端Java手机已经陆续出现。
二、Profile
与Configuration不同的是,Profile主要是针对软件接口而定义的,Profile有必须实现的,也有可选的功能,所以Profile在某种意义上更加灵活。
在Profile规范中最重要的是MIDP(Micro Information Device Profile),MIDP是一套定义了能在Java手机上运行的Java程序规范集合,它不仅定义了包括应用程序生命周期,定义了手机中多种UI界面组件,而且还定义了支持手机Record存储和网络Http连接等规范,所有符合MIDP规范的Java程序都被称为MIDlet,MIDlet程序可以通过网络直接下载到手机中并运行。
相对于早期的MIDP1.0规范来说,MIDP1.0能使我们在手机上运行有手机UI界面的Java程序,但是MIDP1.0在手机游戏方面对游戏的支持还是不够,在开发过程中必须实现许多代码才能完成简单的程序,所以MIDP2.0规范的出现很大程度上加强了对手机游戏开发的支持,从而使得开发者能在创建游戏的过程中编写更少的代码量。
目前MIDP规范的图形界面UI都是独立于J2SE平台中的AWT组件和Swing组件,因为目前手机的运算能力还是比较有限的,随着手机的CPU运算速度的越来越快,使得J2SE中的AWT和Swing移植到手机上将成为可能。目前,基于CDC规范的最新PBP 1.0(Personal Basic Profile)和PP 1.0(Personal Profile)版本提供了相对一部分的AWT和Swing支持,部分高端PDA已经可以运行PBP和PP的Java程序了。由此可见,在不久的将来大部分的AWT和Swing组件都能移植到手机上。
和Configuration相比,Profile规范有许多可选的类包,比较实用的Profile规范有MMAPI(Mobile Media API),能够实现手机中多媒体播放功能;M3G API(Mobile 3D Graphics API),定义了实现手机中3D的UI功能;WMA(Wireless Messaging API),实现手机短消息的收发。不同手机如果支持某一Profile,那么将可以在MIDlet中使用相应的接口API来实现相应的功能。
分享到:
相关推荐
标题中的"j2me satas-crypto.rar"表明这是一个与Java 2 Micro Edition(J2ME)相关的压缩文件,其中包含...为了充分利用这些资源,开发者需要有一定的J2ME基础,了解基本的编程概念,以及对加密和安全概念的初步认识。
J2ME(Java 2 Platform, Micro Edition)是一种用于移动设备的Java平台版本,它针对移动...对于初学者来说,了解J2ME的这些基础知识,可以帮助他们建立起对J2ME技术的初步认识,并为进一步的学习和开发奠定坚实的基础。
4.1.2 对游戏设计的初步认识 6 4.1.3 模块成型阶段 6 4.2 程序的类结构 7 4.3 游戏的流程图 7 4.4 游戏的实现 8 4.4.1 主类GameMIDlet的实现 8 4.4.2 游戏画布MyGame类的实现 13 4.4.3 玩家精灵GamePlayer类的实现 ...
4.1.2 对游戏设计的初步认识 游戏设计不仅考虑了游戏性,还注重了用户体验,例如,通过精心设计的地图和谜题,以及适配手机操作的控制方式。 4.1.3 模块成型阶段 游戏的开发过程中,将游戏分为多个模块,如主菜单...
此外,对Java类库、I/O操作、多线程编程、网络编程、Java集合框架等也有初步的认识和应用能力。 这本书对于那些希望掌握Java编程,了解其背后的原理和技术发展的初学者来说,是一本非常实用的入门教材。通过本书的...
Java是一种广泛使用的计算机编程语言,它是一种面向对象的高级编程语言,由Sun Microsystems公司(后被Oracle公司收购)的James ...通过这些基础知识的学习,初学者可以在短时间内对Java有一个初步的认识和了解。
### 软件设计基础——从事软件开发设计必备...通过以上内容的学习,读者可以对 Java 有一个初步的认识,为后续深入学习打下坚实的基础。接下来的章节将更详细地介绍 Java 图形界面、文件操作、数据库连接等方面的知识。