首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

J2ME 配置深度解析:CLDC 與 CDC 硬體門檻、類庫邊界與虛擬機差異

     編輯:J2ME

配置定位

Configuration 定義「一組裝置共享的最小 Java 平台」,包含虛擬機特性、核心類庫最小集。J2ME 定義兩種:

CLDC (Connected Limited Device Configuration)

  • 目標:記憶體 128-512KB、電池供電、間歇網路 (≤9600 bps)、多樣或無 UI 的個人化行動裝置 (手機、PDA、呼叫器、POS)。
  • 虛擬機:KVM (16/32位處理器、160-512KB 記憶體)。
  • 缺失 J2SE 特性:AWT/Swing、使用者 ClassLoader、finalize、弱引用、RMI、反射、浮點 (float/double)、線程組/守護線程、大部分 Error 子類。
  • 四大核心包:java.lang、java.util、java.io (皆為 J2SE 子集)、javax.microedition.io (GCF 統一連接入口)。
  • GCF 連接範例:
    Connector.open("https://example.com");
    Connector.open("socket://192.168.1.1:8080");
    Connector.open("comm:0;baudrate=9600");
    Connector.open("datagram://239.255.0.1:5000");
    Connector.open("file:/data.txt");
    

CDC (Connected Device Configuration)

  • 目標:記憶體 >512KB、32/64位 CPU、固定網路、接市電裝置 (機頂盒、車載娛樂、網路電視)。
  • 虛擬機:CVM (完整 JVM 規範、支援 JNI 1.1、JVMDI、JVMPI)。
  • 類庫:包含 CLDC 全集 + 反射、最終化、浮點、弱引用、完整 I/O (File、FileInputStream 等)、完整錯誤處理。本質上是 J2SE 1.3 子集與 CLDC 超集的合集。

設計哲理對比

原則CLDCCDC
記憶體壓力極嚴格 (512KB 上限)寬鬆 (>512KB)
浮點支援移除 (硬體多無 FPU)保留
檔案系統不保證存取權限 → 移除 File 類保留完整 java.io
錯誤處理成本高、恢復難 → 精簡 Error 體系保留完整
安全模型預驗證 + 沙箱隔離完整 J2SE SecurityManager + 憑證簽章

總結

CLDC 為資源極度受限的行動裝置量身打造,犧牲功能換取體積與速度;CDC 面向較強固定裝置,提供近桌面級 Java 體驗。選型取決於目標硬體規格與功能需求。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved