Java ME以往称作J2ME(Java Platform, Micro Edition)是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。
Java ME和java se、Java EE一起构成Java技术的三大版本,并且同样是通过JCP(Java Community Process)制订的。
Java ME是Java 2的一个组成部分,与J2SE、J2EE并称。与J2SE和J2EE相比,JAVA ME总体的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。为了在达到标准化和兼容性的同时尽量满足不同方面的需求,JAVA ME的架构分为Configuration、Profile和Optional Packages(可选包)。它们的组合取舍形成了具体的运行环境。
Configuration主要是对设备纵向的分类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的Configuration有- Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。
立即学习“Java免费学习笔记(深入)”;
Profile建立在Configuration基础之上,一起构成了完整的运行环境。它对设备横向分类,针对特定领域细分市场,内容主要包括特定用途的类库和API。CLDC上已经标准化的Profile有Mobile Information Device Profile (MIDP)和Information Module Profile(IMP),而CDC上标准化的Profile有Foundation Profile(FP)、Personal Basis Profile(PBP)和Personal Profile(PP)。
可选包独立于前面两者提供附加的、模块化的和更为多样化的功能。标准化的可选包包括数据库访问、多媒体应用、蓝牙等等。
当前阶段,Java ME最流行的应用是游戏软件。因为与需要昂贵的专用设备和开发工具的竞争对手(如索尼和任天堂)相比,Java ME程序可以在PC机上开发和仿真运行,然后很容易地部署到目标机上,从而使其开发、测试和发布的变得容易和廉价。实际上Java ME的用途和前景要广泛得多。
开发Java ME程序一般不需要特别的开发工具,开发者只需要装上Java SDK及下载免费的Sun Java Wireless Toolkit就可以开始编写Java ME程序,编译及测试,此外当前主要的IDE(Eclipse及NetBeans)都支持Java ME的开发,个别的手机开发商如Nokia及Sony Ericsson都有自己的SDK,供开发者在开发出兼容于他们的平台的程序。