`

CLDC API简要介绍

阅读更多

 * 介绍

 

      迄今为止,我们知道 CLDC 比较适合 J2ME,并且也已经建立了我们的开发环境。在这一章中,我们将更深入地探索 CLDC API。CLDC API 实际上只是 J2SE 的一个子集,它包括 java.lang、java.io 和 java.util,另加一个新软件包 -- javax.microedition。我们将逐个来研究这些软件包,并突出显示每一个包中的重要的类。 

      尽管每一个类都在 J2SE 中,但是没有必要让每一个类的 CLDC 实现都能实现 J2SE 支持的所有方法。您可以检查 CLDC API 文档以确认哪些方法是受支持的。文档的副本位于安装 J2ME CLDC 时创建的 j2me_cldc/docs 目录下。它提供 PDF 和 javadoc 两种格式。

 

 

    * java.lang

 

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

      相对于 J2SE v1.3 API,CLDC API 中删去了几个其它的类。其中包括 ClassLoader、Compiler、InheritableThreadLocal、Number、Package、Process、 RuntimePermission、SecurityManager、StrictMath、ThreadGroup、ThreadLocal 和 Void。 

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

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

 

 

 

    * java.lang 核心运行时类

 

      java.lang 软件包的核心运行时类有: 

 

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

 

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

 

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

 

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

 

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

 

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

 

 

 

    * java.lang 核心数据类型类

 

      java.lang 软件包中的核心数据类型类有: 

 

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

 

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

 

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

 

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

 

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

 

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

 

 

 

    * java.lang 帮助类

 

      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 -- 一个抽象类,使用一套整型字段如 YEAR、MONTH、 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 -- 定义了一个流连接的通告程序必须具有的性能。

分享到:
评论

相关推荐

    基于Java ME无线网络移动端的俄罗斯方块游戏的毕业设计,该游戏可在移动设备上进行,提供了一个简单、有趣、易于操作的游戏体验

    在Java ME的基础上,我们又使用了MIDP和CLDC API来实现游戏的基本功能。这些API使得游戏更加稳定,同时也可以保证游戏的性能。在游戏方面,我们除了实现了基本的方块移动、旋转、消除等功能外,还提供了多种不同的...

    使用midp进行Android下实现的J2ME API类库

    本API库完全支持 支持MIDP2.0、cldc1.0,WMA,jsr75等常用API库,借助它你可以非常快速地将原J2ME应用转化为APK应用 包括: 1 案例程序源码及工程导入Eclipse即可使用 ; 2 工具包android_midp.jar ; 3 简要开发指南...

    Android下实现的J2ME API类库[完全支持MIDP2.0]

    本API库完全支持 支持MIDP2.0、cldc1.0,WMA,jsr75等常用API库,借助它你可以非常快速地将原J2ME应用转化为APK应用 包括: 1 案例程序源码及工程导入Eclipse即可使用 2 工具包android_midp.jar 3 简要开发指南dev...

    j2me 循序渐进

    KJava API -- 用于关联连接有限设备配置 (CLDC) 和使用 CLDC 的移动信息设备简表。之后您将构造一个简单的 应用程序来看看您能用 J2ME 做些什么。您将使用 CLDC 和 KJava 开发一个基本绘图应用程序以及一个...

    J2ME中文教程(From IBM)

    本教程将向您介绍一些课题如 K 虚拟机 (KVM),和 KJava API -- 用于关联连接有限设备配置 (CLDC) 和使用 CLDC 的移动信息设备简表。之后您将构造一个简单的应用程序来看看您能用 J2ME 做些什么。您将使用 CLDC 和 K...

    Java 2 平台 (J2ME)学习

    KJava API -- 用于关联连接有限设备配置 (CLDC) 和使用 CLDC 的移动信息设备简表。之后您将构造一个简单的 应用程序来看看您能用 J2ME 做些什么。您将使用 CLDC 和 KJava 开发一个基本绘图应用程序以及一个小型 ...

    J2ME中文教程 html 格式

    本教程将向您介绍一些课题如 K 虚拟机 (KVM),和 KJava API -- 用于关联连接有限设备配置 (CLDC) 和使用 CLDC 的移动信息设备简表。之后您将构造一个简单的应用程序来看看您能用 J2ME 做些什么。您将使用 CLDC 和 K...

    J2ME手机移动无线开发最新开发包 WTK Java(TM) Wireless Toolkit 2.5

     WTK是用来开发MIDP的,为了让MIDlet可以顺利编译和执行,WTK必须具有CLDC和MIDP的类库,WTK可以帮助我们省去额外安装调试这些类库的时间。而不同版本的WTK包含的程序库内容是不一样的,比如说2.0中包含了midpapi....

    JAVA打飞机游戏毕业设计(源代码+论文).zip

    在J2ME中还有一个重要的概念是可选包(Optional Package),它是针对特定设备提供的类库,比如某些设备是支持蓝牙的,针对此功能J2ME中制定了JSR82(Bluetooth API)提供了对蓝牙的支持。 目前,J2ME中有两个最主要...

    JAVA上百实例源码以及开源项目源代码

    简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...

    JAVA上百实例源码以及开源项目

    一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...

    java的微型版本j2me进行贪吃蛇手机游戏

    现在我们所要介绍的这一款贪吃蛇,就是满足以上要求而设计出来的,希望能给玩家带来娱乐.贪吃蛇,是个简单的小游戏,但却能给人以放松,让我们从繁重的日常生活中解脱出来.而只有我们的身心得到了娱乐才能更好的投入到新...

    Symbian系统

    这个系统包含了绝对现代化的多媒体和Java设备,支持多种标准,其中包括JSR118, CLDC1.1 (JSR139),MobileMedia (JSR135),3D图像数据(JSR184), JTWI 1.0 c(JSR185)。最后,新版OS还支持SDIO。 2005年二月,英国...

    Java经典入门教程pdf完整版

    CLDC的规格之中,只支持java.lang.*、java.io.*、以及java.uti1.*这些类。此版本 也增加了一些攴持“微小装置”的扩充类,如 Javax. microedition.io.*类。然而,此版 木并不支持所有的Java基木类,就标准的 JMECLDO,也...

Global site tag (gtag.js) - Google Analytics