普適計算時代與 Java 定位
從大型主機、PC 時代進入「一人多台設備」的普適計算時代。Java「一次編寫,到處運行」特性與網絡能力,完美契合消費電子與嵌入式領域——這正是 Java 最初設計目標。J2ME 為此領域制定的標準。
Java 三大版本定位
- J2SE:桌面/工作站個人與低端商務應用
- J2EE:服務端企業級應用
- J2ME:有限記憶體、顯示與處理能力的消費電子/嵌入式設備

J2ME 體系架構:Configuration 與 Profile
兩大設備類別
- 間歇網絡的移動設備:手機、雙向傳呼機、PDA——個人化、電池供電、資源受限
- 固定網絡的共享設備:機頂盒、Web-TV、車載導航——固定電源、資源相對充裕
Configuration(配置)—— 計算能力分層
- CLDC:Connected Limited Device Configuration,針對移動設備,核心為 KVM(Kilobyte VM)
- CDC:Connected Device Configuration,針對固定設備,功能更完整
Configuration 定義 JVM 與核心庫,是平台兼容性基礎,捨棄設備特殊性以換取通用性。
Profile(簡檔)—— 功能擴展
建立在 Configuration 之上,針對特定設備功能定義 API:
- MIDP:Mobile Information Device Profile,智能手機與部分 PDA,定義 GUI、輸入、存儲、短訊等
- PDA Profile:針對 PDA,螢幕/記憶體較大,網絡需求不同

實際部署範例
- Palm OS PDA:CLDC + KVM + PDA Profile
- Symbian 智能手機:CLDC + KVM + MIDP

未來演進:Building Block
JSR 68 提出以 Building Block 取代 Configuration,允許 Profile 直接引用 J2SE/J2EE 現有 API,避免重複制定。
總結
J2ME 以 Configuration 定義計算能力層級,Profile 定義功能擴展,雙層架構靈活適應多樣化嵌入式設備,為「一次編寫,到處運行」在資源受限環境提供標準化基礎。