我們將從定義 J2ME 開始,從最簡單的J2ME 是什麼開始講起。然後討論它的總體架構並學習 J2ME 目標設備。作為架構討論的一部分,我們將提供有關簡表和配置的概述。同時我們會簡要介紹打包和配置 J2ME 應用程序過程中的一些注重事項。
J2ME 是什麼? Sun Microsystems 將 J2ME 定義為“一種以廣泛的消費性產品為目標的的高度優化的 Java 運行時環境,包括尋呼機、移動電話、可視電話、數字機頂盒和汽車導航系統。”
自從 1999 年 6loper Conference 上聲明之後,J2ME 為小型設備帶來了 Java 語言的跨平台功能,答應移動無線設備共享應用程序。有了 J2ME,Sun 已經使 Java 平台能夠適應集成了或基於小型計算設備月在 JavaOne Deve的用戶產品。
J2ME 總體架構 J2ME 使用配置和簡表定制 Java 運行時環境 (JRE)。作為一個完整的 JRE,J2ME 由配置和簡表組成,配置決定了使用的 JVM,而簡表通過添加特定於域的類來定義應用程序。
配置將基本運行時環境定義為一組核心類和一個運行在特定類型設備上的特定 JVM。我們將在 J2ME 配置一章中具體討論配置。
簡表定義應用程序;非凡地,它向 J2ME 配置中添加特定於域的類,定義設備的某種作用。我們將在 J2ME 簡表一章中深入介紹簡表。
下面的圖表描述了不同的虛擬機、配置和簡表之間的關系。它同時把 J2SE API 和它的 Java 虛擬機進行了比較。雖然 J2SE 虛擬機通常被稱為一種 JVM,但是 J2ME 虛擬機、KVM 和 CVM 都是 JVM 的子集。KVM 和 CVM 均可被看作是一種 Java 虛擬機 -- 它們是 J2SE JVM 的壓縮版,並特定於 J2ME。
配置概述 配置將基本運行時環境定義為一組核心類和一個運行在特定類型設備上的特定 JVM。雖然還可能在將來定義其他的配置,但當前 J2ME 存在兩種配置:
1、連接限制設備配置 (CLDC) 非凡與 KVM 一起用於內存有限的 16 位或 32 位設備。這是用於開發小型 J2ME 應用程序的配置(虛擬機)。(從開發者的角度來看)它的大小限制讓它比 CDC 更有趣、更具挑戰性。CLDC 同時還是用於開發繪圖工具應用程序的配置。 Palm 電腦便是一個運行小應用程序的小型無線設備的示例。我們將在本轉體的後續文章中深入介紹 CLDC。
2、連接設備配置 (CDC) 與 C 虛擬機 (CVM) 一起使用,用於要求內存超過 2 兆的 32 位體系結構。互聯網電視機頂盒便是這類設備的一個示例。雖然稍後我們將在 CDC API 一章中簡要介紹 CDC,但它並不在本教程的范圍內。
簡表概述 簡表定義了您的應用程序所支持的設備類型。非凡地,它向 J2ME 配置添加了特定於域的類來定義設備的某種作用。簡表建立在配置的頂部。已經為 J2ME 定義了兩種簡表:KJava 和移動信息設備簡表 (MIDP),它們也被建立在 CDLC 上。這兩種簡表適用於小型設備。
有一種綱要簡表,您可以在它的上面創建自己的簡表,這種綱要簡表也稱為基礎表,可供 CDC 使用。然而,在本教程中,我們只重點介紹建立在 CLDC 頂部,適用於小型設備的簡表。我們將在後面的文章中討論上述這些簡表,還會使用 KJava 和 MIDP 建立一些示例應用程序。
J2ME 目標設備 使用 CLDC 開發的 J2ME 應用程序的目標設備通常具有以下特征:
可供 Java 平台使用的 160 到 512 千字節的總內存
功率有限,經常是電池供電
網絡連通性,經常是無線的、不一致的連接並且帶寬有限
用戶接口混亂,程度參差不齊;有時根本就沒有接口
一些 CLDC 支持的設備,包括無線電話、尋呼機、主流個人數字助手 (PDA),以及小型零售支付終端。
依照 Sun Microsystems,CDC 的目標設備通常具有以下特征:
使用 32 位處理器
2 兆字節或更多可供 Java 平台使用的總內存
設備要求的 Java 2 “藍皮書”虛擬機的全部功能
網絡連通性,經常是無線的、不一致的連接並且帶寬有限
用戶接口混亂,程度參差不齊;有時根本就沒有接口
一些 CDC 支持的設備,包括常駐網關、智能電話和通訊器、PDA、治理器、家用電器、銷售網點終端以及汽車導航系統。
J2ME、J2SE 與 J2EE 之間的比較
下面的圖表描述了支持 J2ME 應用程序的設備,同時說明了 J2ME 適合 Java 平台之處: