作為一名 Web 開發者,接觸 J2ME 最大的障礙不是語法,而是「這套體系到底長什麼樣」。本文梳理 Java 技術族群定位、CLDC/CDC、Profile、Configuration 等核心名詞,建立正確的知識地圖。
J2EE (企業級) > J2SE (桌面/服務器標準版) > J2ME (微型版) > Java Card (智能卡)
↑ ↑ ↑
分布式、事務、 完整 API、 配置+概要文件、
安全、高併發 AWT/Swing、JDBC 針對資源受限設備裁剪
一切基於 J2SE,但「選擇不同,支持的基礎類庫就不同」——這是理解 Configuration/Profile 的鑰匙。
| 名詞 | 全稱 | 通俗解釋 | 關鍵點 |
|---|---|---|---|
| CLDC | Connected Limited Device Configuration | 「有限設備配置」:針對手機/PDA 這類電池供電、內存小、網絡斷續的設備 | KVM、基礎庫子集、javax.microedition.io (GCF) |
| CDC | Connected Device Configuration | 「連接設備配置」:針對電源充足、內存大、網絡穩定的設備(機頂盒、車載) | CVM/完整 JVM、幾乎全 J2SE 庫 |
| Profile | 概要文件 | 架構在 Configuration 之上,定義具體垂直領域的 API(UI、持久化、多媒體…) | MIDP、PBP、PP、RMI Profile |
| Configuration | 配置 | 定義虛擬機+核心庫的底線,是 Profile 的基座 | 一個 Configuration 可支撐多個 Profile |
J2SE 核心庫
↑ (子集化、重組)
CLDC 核心庫 (java.lang, java.io, java.util, javax.microedition.io)
↑ (擴展)
MIDP 庫 (javax.microedition.lcdui, .midlet, .rms, .media, .pim...)
註:CLDC 1.1 新增 java.lang.ref (弱引用),支援 float/double。
J2ME 不是「縮水版 Java」,而是面向資源受限設備的標準化平台族。Configuration 定底,Profile 定面,兩者組合構成具體平台。記住這張地圖,後續學習不再迷路。