J2ME體系結構基於設備的系列和類別,一個類別定義了一個特定種類的設備。移動電話、尋呼機和個人電腦記事本都是單獨的類別。對存儲器和處理能力有相近需求的若干類別的設備構成設備的一個系列。移動電話、尋呼機和個人電腦記事本一起就是占用資源很小的設備的一個系列。
Java 虛擬機層(Java Virtual Machine Layer):是Java虛擬機的一個實現,它是為特定設備的主機操作系統定制的,而且支持特定的J2ME配置(Configuration)。
配置層(Configuration Layer):配置層定義了Java虛擬機功能上和特定類別設備上可用的Java類庫的最小集。從某種程度上說,一個配置定義了Java平台功能部分和庫的共同性,開發者可以假設這些功能部件和庫在屬於某一特定類別的所有設備上都是可用的。
框架層(Profile Layer):框架層定義了特定系列設備上可用的應用程序編程接口(API)的最小集。框架在一個特定的配置上實現。應用程序是針對特定框架編寫的,因此可以移植到支持該框架的任何設備上。一個設備可以支持多個框架。用戶和應用程序供應商看到最多的就是這一層。
MIDP(Mobile Information Device Profile)層:移動信息設備框架。是Java API集合,它處理諸如用戶界面、持久存儲和聯網等問題。
(2)J2ME配置Configuration
由上可知,J2ME組件都圍繞一個中心,這些中心被稱為“配置”(Configuration)。它們用於消費電子和嵌入設備的特別的類。目前J2ME定義2個“配置”,這2種“配置”由於其處理運算的能力不同而支持不同的設備對象。
Connected Limited Device Configuration(CLDC,有限連接設備配置):該“配置”定義Java應用程序接口以及支持手持設備的技術。如手機、掌上電腦等。
Connected Device Configuration(CDC,連接設備配置):該“配置”支持“插入牆”式設備的應用程序接口,如機頂盒等。
上述兩種“配置”,其區別在於它們應用於的設備的能力:
CLDC設備的處理器能力有限(與台式機比較),且存儲器大小一般只在128KB到512KB之間,而CDC系統則不同,它可能有32位或64位處理器,以及有限的存儲容量,不過它的下限也超過512KB。它們共同所遵循的原則是,每個不同功能的硬件設備都將被不同的虛擬機支持。
3.J2ME的簡表Profile
雖然,“配置”為一組通用設備提供了最小的Java平台,但是開發者感興趣的是為個別設備設計應用程序,當他們只使用“配置”進行開發,那麼所編寫的應用程序肯定會有所欠缺。“配置”必須滿足所有設備的最小要求,而用戶界面、輸入機制和數據持久性都具有高度的設備具體性,每一種設備都有自己的方法,這些往往不在“配置”所能滿足的最小要求范圍之內。
現在,5個已知簡表已經有了規范。而每個簡表的責任都是為了完善配置的不足。
(1)MIDP簡表
MIDP(Mobile Information Device Profile,移動信息設備簡表)是第一個實現的簡表,它補充了CLDC配置,並且提供應用程序語義和控件、用戶界面、持久存儲器、網絡和用於移動電話的計時器、雙通道呼叫器和其他無線電設備。
(2)PDA簡表
Palm公司是開發PDA簡表規范的領頭人,該簡表完善了CLDC配置,在相當長的時間內,它都將是KJava類程序包的替代品。Java規范建議該簡表至少應當提供2個核心功能片段,即用戶界面顯示工具包,適合於“有限的尺寸和深度顯示”,另一個則是持久數據存儲器機制。顯示工具包應該是抽象窗口工具包的一個子集,而持久機制將為應用程序、數據、配置/環境信息提供簡單的數據存儲。
(3)Foundation簡表
Foundation簡表的任務是擔任一個基礎簡表,便於以後開發出來的提供圖形用戶接口、 網絡等功能的簡表附著在它之上。除了用於基礎簡表,Foundation簡表還提供完整網絡的支持,不管有沒有使用圖形用戶接口。
(4)Personal簡表
在當前規范的需求下, Personal簡表提供下一代Personal Java環境。該簡表允諾,提供互聯網連接性和Web保真度以及一個能夠運行Java Applets的GUI。
(5)RMI簡表
我們知道CDC配置為共享的、固定網絡連接信息設備提供最小的Java環境。該簡表將通過提供Java到Java的RMI來協助提供更好的網絡連接性。