初學 J2ME 開發者常對平台核心概念感到困惑,如記憶體分類、CLDC、MIDP 等術語。本文系統闡述這些關鍵觀念,建立清晰的知識框架。
MIDP 裝置記憶體劃分為三類,各有用途與限制:
分配給 MIDlet 套件的空間,對應 JAR 檔案大小。廠商常設上限(如 Nokia 6108 僅 64KB),超過即無法安裝。縮減 JAR 大小關鍵在於使用混淆器(如 ProGuard)壓縮位元碼。
應用程式執行期建立物件、區域變數與成員變數的儲存區,通常僅數十 KB 至數百 KB。物件生命週期結束需依賴垃圾回收釋放。
透過 Record Management System (RMS) 實現本地資料持久化,支援跨 MIDlet 呼叫的資料保留。
CLDC 針對資源受限裝置(智慧型手機、雙向呼叫器、PDA)定義最小執行環境:
核心類別庫僅保留 java.lang、java.io、java.util 子集,新增 javax.microedition.io 通用連接架構(GCF),抽象化檔案、Socket、HTTP 等 I/O 操作。虛擬機為 KVM(K Virtual Machine),設計目標:體積 50-80KB、記憶體佔用極低、高可移植性、支援多執行緒與垃圾回收。
MIDP 建構於 CLDC 之上,定義應用程式生命週期、使用者介面(javax.microedition.lcdui)、RMS、網路訊息處理等 API。提供 MIDlet 應用程式框架,類似 J2SE 的 Applet 模型。J2ME 平台由一個 Configuration 加一或多個 Profile 組成。
理解記憶體分類有助於資源優化;掌握 CLDC 與 MIDP 分層架構,能正確選擇開發目標平台與 API。後續文章將深入實作技巧與進階主題。