| 版本 | 全稱 | 定位 | 核心類庫 |
|---|---|---|---|
| J2SE | Java 2 Standard Edition | 桌面客戶端應用 | 完整 Java 核心庫 (java.*, javax.*) |
| J2EE | Java 2 Enterprise Edition | 伺服器端企業應用 | J2SE + Servlet/JSP (javax.servlet.*), EJB (javax.ejb.*), JMS, JTA 等 |
| J2ME | Java 2 Micro Edition | 嵌入式/行動裝置 (手機、PDA、智慧卡) | J2SE 核心庫子集 + 擴展庫 (javax.microedition.*) |
Configuration 定義「最低硬體門檻」與「核心 JVM/類庫」:
| 配置 | 全稱 | 目標裝置 | 核心庫 | 擴展庫 |
|---|---|---|---|---|
| CLDC | Connected Limited Device Configuration | 資源受限:手機、PDA、掌上遊戲機 | java.lang.*, java.io.*, java.util.* (精簡版) | javax.microedition.io.* (GCF) |
| CDC | Connected Device Configuration | 資源較豐富:機頂盒、車載系統、智能冰箱 | 接近 J2SE (含 java.text, java.net, java.security 等) | Foundation Profile, Personal Profile 等 |
Profile 建立在 Configuration 之上,針對特定裝置類別提供完整 API:
+---------------------------+ | Applications / OEM APIs | ← 遊戲、應用、廠商擴展 +---------------------------+ | Profile | ← MIDP, IMP, DoJa (垂直領域 API) +---------------------------+ | Configuration | ← CLDC / CDC (核心 JVM + 核心庫) +---------------------------+ | JVM / KVM | ← KVM (CLDC), CVM (CDC), IBM J9 等 +---------------------------+ | Operating System | ← Symbian, Linux, RTOS, Nucleus... +---------------------------+ | Hardware | ← ARM, MIPS, x86... +---------------------------+
javacard.*, javacardx.*,僅支援 boolean/byte 基本類型。| CLDC | MIDP | 典型特性 | 代表時代 |
|---|---|---|---|
| 1.0 | 1.0 | 基本 LCDUI、RMS、HTTP、無 float、無 Socket | 2002-2004 早期彩螢手機 |
| 1.0 | 2.0 | Canvas 遊戲 API、音效、Socket/UDP 選配、Push | 2004-2006 主流功能機 |
| 1.1 | 2.0 | float/double、弱引用、完整 Socket、更大堆 | 2006-2010 智慧型功能機 |
| 1.1 | 3.0 | 觸控、SVG、高級安全、多任務、豐富 Profile | 2010+ 過渡期智能機 |
配置定底座,Profile 定業務;
KVM 跑在配置上,應用跑在 Profile 上;
OTA 把應用送到手機裡,STK 把 Java 裝進 SIM 卡底。