|
J2ME结构与相关规范介绍
J2ME的适用范围很广,而且针对J2ME的规范也在增加,很多人因为对各种规范的作用不了解造成对J2ME体系的误解。本文主要讲述一下 J2ME 的结构和构成,同时对一些容易混淆的概念进行解释。 J2ME是什么? 很多人把J2ME等同于手机程序开发,其实这是一个非常错误的说法。也有人认为J2ME是一个标准,一个规范,这同样是不正确的。 Sun 公司将 J2ME (Java 2 Micro Edition,Java 2微型版)定义为一种以广泛的消费性产品为目标的、高度优化的 Java 运行时环境。自从 1999 年 6 月在 JavaOne Developer Conference 上声明之后,J2ME 进入了小型设备开发的行列。通过 Java 的特性,遵循 J2ME 规范开发的 Java 程序可以运行在各种不同的小型设备上。 J2ME是Sun公司为嵌入式开发所定义的一个框架,一系列标准的规范所组成。所以J2ME是一个协议簇,而不是单一的规范。 J2ME是一个非常大的概念,下面的一幅图可以看看J2ME的适用范围。 图1 图中的CDC 和CLDC 是支持J2ME的两类设备的配置的简称,分别是: ? ?CDC (Connected Device Configuration,连接设备配置),运行在这一配置上的程序称为J2ME Application,在CVM上进行解释。 ? ?CLDC(Connected Limited Device Configuration,连接限制设备配置),运行在这一配置上的程序称为MIDlet ,在KVM上进行解释。 可以把CDC 和CLDC 理解为对硬件的定义,就如同PC机和小型机一样,这些设备提供Java程序运行的硬件环境。 在 J2ME 中有两类虚拟机:CVM (C Virtual Machine,C虚拟机)与 KVM (K Virtual Machine,K虚拟机)。KVM 和 CVM均可被看作是一种 Java 虚拟机,是 JVM 的子集,在功能上都是 JVM 的缩减版。这两类虚拟机的适用范围并不相同,简单地说,CVM 的功能比KVM 功能更为强大。 这里再补充一点,J2ME还包括对了Java Card 的定义,用于各类IC卡。JavaCard 和CDC/CLDC在J2ME中是相同的地位。 JavaCard 的网页见:http://java.sun.com/products/javacard/index.jsp 。 所以在这里要理解J2ME的含义,就可以从CLDC 和CDC这两方面进行了解。 CLDC 与CDC的对比 在前面的图1中已经显示出CLDC 和CDC在适用设备上的区别。 CDC主要针对32位的处理器主频通常在75MHz以上,内存可能在1~4MB 。CDC 针对的设备主要是数字电视、机顶盒、网络电话、车载计算设备等。这些设备的特点是: ? 有线连接 ? 电源稳定 ? 设备外设资源比较受限 CLDC设备的最低配置为:CPU为16位、32位主频在 16MHz以上的处理器,设备的内存比较少,可能只有512KB,甚至更少。现在硬件的发展非常快,以前所定义的CLDC的设备目前的设备甚至远远超过原来的定义。不过请注意一下,J2ME 对CLDC设备配置的定义只是一个最低要求的定义。其实目前很多CLDC设备的配置都远远超过上面的配置,不过要分辨CLDC设备主要要从设备特点上进行区别。这些设备的特点是: ? 无线连接
上一篇:J2ME简介
下一篇:J2ME内存优
|