CLDC API 說明
發表時間:2024-06-17 來源:明輝站整理相關軟件相關文章人氣:4
[摘要]迄今為止,我們知道 CLDC 比較適合 J2ME,并且也已經建立了我們的開發環境。在這一章中,我們將更深入地探索 CLDC API。CLDC API 實際上只是 J2SE 的一個子集,它包括 java.lang、java.io 和 java.util,另加一個新軟件包 -- javax.micro...
迄今為止,我們知道 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)。