解析J2ME配置的两种类型

开发 前端
前面我们介绍了J2ME应用程序内存优化的概念,这里向大家描述一下J2ME配置问题,配置将基本运行时环境定义为一套核心类和一个运行在特定类型设备上的特定的JVM。

本文和大家重点讨论一下J2ME配置问题,Sun提供的J2ME配置是适合不同层次的市场需求的--CLDC适合小型设备,而CDC适合大型设备。通过本文介绍你可以学到J2ME的两种配置类型是CLDC和CDC。

J2ME配置

1.J2ME配置是什么?

正如前面所学,配置将基本运行时环境定义为一套核心类和一个运行在特定类型设备上的特定的JVM。您也可以学到J2ME的两种配置类型是CLDC和CDC。

Sun提供的J2ME配置是适合不同层次的市场需求的--CLDC适合小型设备,而CDC适合大型设备。J2ME环境可以被动态地配置为提供运行应用程序所需要的环境,而不用考虑是否为设备提供了运行该应用程序所需的所有Java技术库。核心平台接收应用程序代码和库。运行在网络上的服务器软件执行配置工作。

在下面的几页中,您将学到关于CLDC和CDC的更多知识以及与它们关联的简表。

2.连接限制设备J2ME配置(CLDC)

CLDC是由JavaCommunityProcess创建的。正如SunMicrosystems的Web站点所定义的那样,它的标准是:“轻便、覆盖区域最小的Java构建块,适合小型的、有资源限制的设备。”

J2MECLDC配置是为将在业界定义的简表中使用的一个虚拟机和一套核心库准备的。正如第2章中提及的,一个简表通过在基本J2ME配置顶部提供特定于域的类来为特定的设备定义应用程序。K虚拟机(KVM)、虚拟机的CLDC的参考执行和它的KJava简表运行在CLDC的顶部。

CLDC简要描述了高度限制设备上每个J2ME执行所要求的一套最基本的库和Java虚拟机特征。CLDC主要面向那些网络连接速度慢、能源有限(经常是电池供电)、具有大于等于128KB的稳定内存、以及大于等于32KB的不稳定内存的设备。不稳定内存是不持久的并且没有写保护,这意味着如果关掉设备,内存中的内容将全部丢失。而稳定内存中的内容是持久的,并且有写保护。CLDC设备使用稳定内存来存储运行时的库和KVM,或存储为某个特殊设备创建的另一个虚拟机。不稳定内存被用来分配运行时的内存。

3.CLDC要求

CLDC定义了下列要求:

◆完整的Java语言支持(除浮点支持、最终定案和错误处理之外)

◆完整的JVM支持

◆CLDC的安全性

◆有限国际化的支持

◆继承类--所有不针对CLDC的类都必须是J2SE1.3类的子类

针对CLDC的类都在名为javax.microedition的软件包和它的子包里

除javax.microedition软件包以外,CLDCAPI还由J2SE的子集java.io,java.lang以及java.util等软件包组成。我们将在CLDCAPI这一章中学习有关的细节问题,然后使用CLDCAPI来开发我们的绘图应用程序。

4.连接设备J2ME配置(CDC)

连接设备结构(CDC)被定义为一种添加了CLDC类的Java2标准版(J2SE)的简化版。因此,CDC是建立在CLDC的基础之上,并且为CLDC设备开发的应用程序也可以运行在CDC设备上。

CDC也是由JavaCommunityProcess开发的,它为用户的电子设备和嵌入式设备如智能电话、双向寻呼机、PDA、家用电器、销售网络终端以及汽车导航系统等提供一种标准化的、轻便的、功能齐全的Java2虚拟机构建块。这些设备运行32位的微处理器和超过2MB的内存,这些对于存储C虚拟机和库是必需的。K虚拟机支持CLDC,而C虚拟机(CVM)支持CDC。CDC与基础表相关联,这一点不在本教程的范围之内。
 

【编辑推荐】

  1. 探究开发J2ME应用程序准则
  2. J2ME开发环境搭建必备手册
  3. 经验总结 J2ME学习札记
  4. 瞻望J2ME前景,看J2ME路在何方?
  5. J2ME应用程序内存优化的几种途径 

 

责任编辑:佚名 来源: javaeye.com
相关推荐

2010-09-29 10:10:06

J2ME代码优化

2010-09-29 08:57:04

J2ME前景

2010-09-30 12:53:00

J2MECSS

2010-10-09 16:04:22

J2ME代码优化

2010-09-29 13:50:31

J2MEJ2SE

2010-09-29 12:45:50

J2ME

2010-09-29 10:15:35

JDKJ2EEJ2SE

2010-09-29 15:35:04

Item类J2ME

2010-10-09 14:29:44

J2MEfontcolor

2010-09-30 09:56:26

J2ME Polish

2010-09-29 09:19:39

J2ME开发工具

2009-11-23 18:16:03

PHP时间

2010-09-30 13:06:33

Myeclipse J

2009-07-14 18:03:43

Myeclipse J

2010-09-30 10:40:58

J2MEJSON

2010-10-09 14:54:42

J2ME对话框

2010-09-29 15:17:22

J2MEDisplay类

2010-09-29 16:20:06

J2MEWeb服务API

2010-09-29 10:41:18

J2MEJVM

2010-09-30 11:32:08

NetBeansJ2ME
点赞
收藏

51CTO技术栈公众号