`
isiqi
  • 浏览: 16819978 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

J2ME配置(CDC-CLDC)

阅读更多

J2ME配置CDC - CLDC

1J2ME对嵌入式设备的定义。

J2ME将嵌入式设备定义为2类:连接设备、连接限制设备。

J2ME2种配置来定义不同的设备。

2J2ME配置包含的内容。

配置(configuration)包括虚拟机(virtual machine),核心的类库与APIconfiguration层定义一个java虚拟机的特性与java类库的最小子集。也就是说,configuration层提供了开发人员一个最基础,最核心的Java平台。

3CDCCLDC

CDC (Connected Device Configuration,连接设备配置),运行在这一配置上的程序称为J2ME Application,在CVM上进行解释。

CLDC(Connected Limited Device Configuration,连接限制设备配置),运行在这一配置上的程序称为MIDlet ,在KVM上进行解释。

4J2ME中虚拟机。

J2ME 中有两类虚拟机:CVM (C Virtual MachineC虚拟机) KVM (K Virtual MachineK虚拟机)KVM CVM均可被看作是一种 Java 虚拟机,是 JVM 的子集,在功能上都是 JVM 的缩减版。这两类虚拟机的适用范围并不相同,简单地说,CVM 的功能比KVM 功能更为强大。

这里再补充一点,J2ME还包括对了Java Card 的定义,用于各类IC卡。JavaCard CDC/CLDCJ2ME中是相同的地位。

5CLDC CDC的对比

CDC

CLDC

硬件设备参数

针对32位的处理器主频通常在75MHz以上,内存可能在14MB

CPU16位、32位主频在 16MHz以上的处理器,设备的内存比较少,可能只有512KB,甚至更少。现在硬件的发展非常快,以前所定义的CLDC的设备目前的设备甚至远远超过原来的定义。不过请注意一下,J2ME CLDC设备配置的定义只是一个最低要求的定义。要分辨CLDC设备主要要从设备特点上进行区别

支持设备种类

数字电视、机顶盒、网络电话、车载计算设备等

Nokia 7650Nokia 3650 PDA设备、智能手机等

设备特点:

有线连接

电源稳定

设备外设资源比较受限

无线连接

没有稳定的电源供应(通常使用电池)

设备外设资源极少

API

CDC 是建立在 CLDC 顶部的 API,是整个 J2SE API 的一个更完整的子集。它还包含一个额外的软件包 -- javax.microedition.io 软件包 -- 包含 CLDC 中定义的所有相同的类和接口,及其它。

CDC 中的一些更值得注意的功能是 CLDC 中所没有的:

支持浮点数(包括 java.lang.Floatjava.lang.Double java.lang.StrictMath 类)

classloader (java.lang.ClassLoader)

支持本地进程 (java.lang.Process)

高级多线程支持(包括支持线程组和更多线程)

串行化的类 (java.io.Serialiable java.io.Externalizable)

映象 API(包括 java.lang.reflect 软件包)

文件系统支持

支持 J2SE 类型网络 (java.net)

J2SE Collections API 更完全的支持

javax.microedition.io 软件包增加一个 HttpConnection 接口。这样可为 HTTP 连接提供必要的方法和常量。

支持 J2SE java.lang.refjava.mathjava.securityjava.security.certjava.textjava.util.jar java.util.zip 软件包

·CLDC API 实际上只是 J2SE 的一个子集,它包括 java.langjava.io java.util javax.microedition

·CLDC API 文档的副本位于安装 J2ME CLDC 时创建的 j2me_cldc/docs 目录下。

java.lang

CLDC java.lang 软件包是 J2SE java.lang 软件包的一个子集。与 J2SE 相比,它最引人注目的可能便是冗长的浮点操作了,特别是浮点 (Float) 和双精度 (Double) 类。如果使用浮点的话,这些冗余将涉及到所有其它的类。

相对于 J2SE v1.3 APICLDC API 中删去了几个其它的类。其中包括 ClassLoaderCompilerInheritableThreadLocalNumberPackageProcessRuntimePermissionSecurityManagerStrictMathThreadGroupThreadLocal Void

我们描述了可从下面几页表中的 CLDC java.lang 软件包中获取的主要的类。Java 开发人员对所有这些类的使用都应该是非常熟悉了。

除这些核心类之外,您还将看到 CLDC 支持的 Runnable 接口,正象 Exception Error 和其它有关的类一样。

java.lang 核心运行时类

Class -- 显示正在运行的 Java 应用程序中的类和接口。

Object -- 与在 J2SE 中相同,Object 是所有 Java 对象的基本类。

Runtime -- Java 应用程序提供一种与运行时环境(Java 应用程序在其中运行)进行交互的方法。

System -- 提供一些静态的帮助方法,就像为 J2SE 提供方法一样。

Thread -- 定义 Java 程序的一个执行线程。

Throwable -- Java 语言中所有错误和异常的超级类。

java.lang 核心数据类型类

Boolean -- 包装 boolean 原始数据类型。

Byte - 包装 byte 原始数据类型。

Character -- 包装 char 原始数据类型。

Integer -- 包装 int 原始数据类型。

Long -- 包装 long 原始数据类型。

Short -- 包装 short 原始数据类型。

java.lang 帮助类

Math -- 包含执行基本数学运算的方法。请注意,所有执行浮点值运算的方法都被省略了,仅保留了关于 integers longs 的方法:abs()min() max()

String -- Java 中代表对象 String,就像在 J2SE 中一样。

StringBuffer -- 代表一个可以修改的串,就像在 J2SE 中一样。

java.io 输入类

CLDC API 包含许多 J2SE 中共同使用的输入类。特别地,CLDC java.io 软件包中包括下面一些类:

ByteArrayInputStream -- 包含一个内部缓冲器,它代表可能从输入流中读取的字节。

DataInput -- 一个接口,从二进制输入流提供字节以供读取并把它们转换成原始 Java 数据类型。DataInputStream 提供该接口的实现。

DataInputStream -- 允许应用程序以独立于平台的方式从基层输入流中读取原始 Java 数据类型。

InputStream -- 一个抽象类,它是所有代表字节输入流的类的超级类。

InputStreamReader -- 读取字节并把它们按照指定的字符编码方法转换成字符。

Reader -- 一种读取字符流的抽象类。

注意:其中一些类可能不包含 J2SE 姊妹版支持的所有方法,就像在 java.lang 软件包中一样。尤其是省略了浮点和双精度方法。

java.io 输出类

CLDC API 包含了许多 J2SE 中的共同使用的输出类。特别是,CLDC java.io 软件包中包括下面一些输出类:

ByteArrayOutputStream -- 实现一个输出流,在此输出流中数据被写入字节数组。

DataOutput -- 一种接口,提供原始 Java 数据类型以供写入二进制输出流。DataOutputStream 提供该接口的实现。

DataOutputStream -- 一个输出流,允许应用程序以一种便捷的方式编写原始 Java 数据类型。

OutputStream -- 一个抽象类,它是所有代表字节输出流的类的超级类。

OutputStreamReader -- 给出字符,并按指定的字符编码方法将其转换为字节。

PrintStream -- 添加一种便捷的方法来打印数据值的文本表现形式。

Writer -- 编写字符流的一个抽象类。

其中一些类可能不包含 J2SE 支持的所有方法,比如浮点和双精度方法。

java.util 收集类

CLDC java.util 软件包中包含 J2SE java.util 软件包中最常用的类。这些类中包括四个收集类(实际是三个收集类和一个接口),以及日期/时间和实用程序类。

CLDC 支持的 java.util 收集类有:

Enumeration -- 一个接口,通过项目集允许对例程进行重复调用。

Hashtable -- 实现 hashtable,将键映射到值。

Stack -- 代表了一个后进先出 (LIFO) 的对象集合或堆栈。

Vector -- 代表可以调整大小的对象“数组”或者矢量。

java.util -- 其它的类

CLDC 支持的 java.util 类中其余部分包括日期和时间类,以及 Random 实用程序类。下表中简要列出了这些类。

Calendar -- 一个抽象类,使用一套整型字段如 YEARMONTH DAY 等来获取和设置日期。

Date -- 代表特定的时间和日期,精确到毫秒级。

Random -- 一个实用程序类,用来生成 int long 的随机值流。

TimeZone -- 代表时区的偏移量,也用于校正时间。

javax.microedition.io

迄今为止,我们在 CLDC API 中看到的所有的类都是 J2SE API 的子类。CLDC 还包含一个附加的软件包 -- javax.microedition.io

在这个包里唯一被定义的类就是 Connector 类,也称为工厂类,包含创建 Connection 对象或输入、输出流的方法。

当动态识别一个类的名字时,Connection 对象就被创建了。类名称的识别基于平台名称和被请求连接的协议。描述目标对象的参数串应该满足 RFC 2396 规范所要求的格式。请使用下列格式:

{scheme}:[{target}][{params}]

{scheme} 是一个协议的名称,如 http ftp{target} 通常是一个网络地址,但是面向非网络的协议则可能把它当作一个相当灵活的字段来处理。还有一些参数,如 {params} 被指定为一系列形如 ";x=y" 的分配形式(例如,;myParam=value)。

javax.microedition.io 帮助接口

除类属连接工厂类之外,javax.microedition.io 软件包中还包含下列面向连接的接口:

Connection -- 定义了最基本的连接类型。这个接口也是此软件包中所有其它连接接口的基本类。

ContentConnection -- 定义了一个可以通过内容的流连接。

Datagram -- 定义了一个类属数据报接口。

DatagramConnection -- 定义了类属数据报连接和它必须支持的性能。

InputConnection -- 定义了一个类属输入流连接和它必须支持的性能。

OutputConnection -- 定义了一个类属输出流连接和它必须支持的性能。

StreamConnection -- 定义了一个类属流连接和它必须支持的性能。

StreamConnectionNotifier -- 定义了一个流连接的通告程序必须具有的性能。

分享到:
评论

相关推荐

    第一章J2ME简介--j2me开发.ppt

    J2ME由配置(Configuration)和简表(Profile)组成。配置定义了一类设备所必需的Java虚拟机功能和最小的核心类库,确保设备的基本运行能力。而简表则根据特定设备家族的特性,定义了更高级别的API,以满足设备间的...

    J2ME技术手册---极品

    2. **配置文件(Profiles)**:在配置的基础上添加了特定设备的功能集,如MIDP(Mobile Information Device Profile)用于移动电话,CDC(Connected Device Configuration)用于功能更强大的设备。 **三、KVM与CLDC...

    j2me CDC MIDP CLDC文档

    J2ME 的核心组成部分包括 Connected Device Configuration (CDC)、Connected Limited Device Configuration (CLDC) 和 Mobile Information Device Profile (MIDP)。 1. **Connected Device Configuration (CDC)**:...

    郭克华j2me教程1-3和1-4

    1. **J2ME概述**:讲解J2ME的架构,包括KVM(Java虚拟机)和CDC/CLDC(连接设备配置/连接受限设备配置)框架,以及它们在不同设备上的应用。 2. **MIDP(Mobile Information Device Profile)**:这是J2ME用于开发...

    j2me-step-by-step.rar_java programming

    常见的配置有Connected Limited Device Configuration (CLDC)和Connected Device Configuration (CDC),常见的框架有Mobile Information Device Profile (MIDP)。 **三、J2ME开发环境** 为了进行J2ME开发,你需要一...

    j2me实用教程-手机游戏开发

    3. **CDC(Connected Device Configuration)**:面向更强大设备的配置,如打印机或流媒体设备。 **三、J2ME开发界面** 1. **低级开发界面**:包括MIDP API,如用户界面组件(Canvas)、数据存储(RecordStore)、...

    j2me link game-开源

    profiles则扩展了配置,如CLDC(Connected Limited Device Configuration),它们一起决定了设备可以运行的Java应用程序类型。 - **MIDP与CDC**:MIDP用于功能手机,而CDC(Connected Device Configuration)适用于...

    j2me教程-1.体系介绍和环境配置.rarj2me教程-1.体系介绍和环境配置.rar

    本教程将带你深入了解J2ME的体系结构及其环境配置,这对于初学者来说是非常重要的基础知识。 J2ME体系结构分为几个关键组件,包括Java ME规范、配置(Configurations)、特型(Profiles)以及可下载的Java应用程序...

    J2ME文档-官方文档

    - **CLDC**:Connected Limited Device Configuration,是J2ME的基础配置,定义了基本的Java运行环境。`java.lang`、`java.io`和`java.util`等核心Java包在CLDC中都有所体现。 - **WMA(Wireless Messaging API)**...

    [J2ME编程].(Manning).J2ME.-.Java.in.small.things.(2002)

    - CLDC(Connected Limited Device Configuration):连接限制设备配置,针对内存和处理能力有限的设备。 2. **框架**: - MIDP(Mobile Information Device Profile):移动信息设备配置,是J2ME在手机和移动...

    J2ME及其移植2011

    #### J2ME的配置层级 - **CLDC与CDC** - CLDC(Connected Limited Device Configuration)适用于资源受限的设备,例如手机和个人数字助理(PDA)。 - CDC(Connected Device Configuration)适用于资源更为丰富的...

    Java嵌入式开发之J2ME配置

    开发者在进行J2ME开发时,需要选择一个配置(如CLDC或CDC)和至少一个简表(如MIDP或PDAP),以获得完整的开发环境。配置提供了基本的Java类库和运行时环境,简表则提供了针对特定设备的附加功能。 总的来说,J2ME...

    J2ME-API.rar_j2me

    最著名的配置有Connected Limited Device Configuration (CLDC)和Connected Device Configuration (CDC),前者针对内存有限的设备,后者则适用于功能更强大的设备。配置文件包括Mobile Information Device Profile ...

    J2ME-1.rar_J2ME开发_j2me

    综上所述,J2ME开发涉及了配置和profile的概念,使用MIDP和CLDC进行应用程序设计,借助IDE和模拟器进行开发和测试,通过AWT和MIDP UI组件构建用户界面,利用网络接口进行通信,并用RMS实现数据存储。这些知识点是...

    J2ME开发环境配置方法

    它包括两个配置:Connected Limited Device Configuration (CLDC) 和 Connected Device Configuration (CDC),以及多个配置文件(Profiles),其中最常用的是Mobile Information Device Profile (MIDP)。 #### 三、...

    J2ME平台简介的一篇文章(J2ME走向成熟)

    图1展示了J2ME与J2SE、J2EE之间的关系,以及J2ME内部配置与简档之间的关联。可以看出,J2ME是一个灵活且适应性强的平台,能够根据不同设备的需求提供相应的功能和服务。 #### 五、总结 J2ME的出现极大地扩展了Java...

    j2me教程讲义及短信界面开发实例(上)

    - **关系**:CDC 和 CLDC 是配置(Configuration),规定了运行环境的基本能力;MIDP 是一个配置上的扩展(Profile),定义了特定类型的应用行为,如移动设备上的应用。 #### 4. 开发环境配置 - **JDK (Java ...

    J2ME-API.zip_ME_j2me api_j2me jdk_java me api

    常见的配置包括CLDC(Connected Limited Device Configuration)和CDC(Connected Device Configuration),它们分别针对资源有限和资源丰富的设备。配置之上是不同的Profile,如MIDP(Mobile Information Device ...

    J2ME - 手机开发

    profiles则针对特定设备或应用领域扩展配置,如CLDC(Connected Limited Device Configuration)用于非互联网连接的设备,而CDC(Connected Device Configuration)适用于功能更强大的设备。可选包则提供了额外的...

Global site tag (gtag.js) - Google Analytics