J2ME基础笔记
2004-10-14 17:50
288 查看
J2ME将所有的嵌入式装置区分为两种:一种是运算功能有限、电力供应也有限的嵌入式装置(PDA、手机等);另外一种是运算能力相对较佳、并在电力供应上相对比较充足的嵌入式装置(冷气机、电冰箱、机顶盒等)。
由以上两种区分,Java引入了Configuration的概念,然后把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;另一种装置则规范为Connected Device Configuration(CDC)规格。即J2ME先把所有的嵌入式装置利用Configuration的概念分割成两种抽象的型态。
这里可以把Configuration当作是J2ME对于两种类型嵌入式装置的规格,而这些规格之中定义了这些装置至少要符合的运算能力、供电能力、内存大小等规范,同时也定义了一组在这些装置上执行的Java程序所能使用的类别函数库、这些规范之中所定义的类别函数库为Java核心类别的子集合以及与该型态装置特性相符的扩充类别。比方就CLDC的规范来说,可以支持的核心类别为java.lang.*、java.io.*、java.util.*,而可以支持的扩充类别为java.microedition.io.*。
区分出两种主要的Configuration之后,J2ME接着定义出Profile的概念。Profile是架构在Configuration之上的规格。之所以有Profile的概念,是为了要更明确地区分出各种嵌入式装置上Java程序该如何开发,具有哪些功能。因此Profile之中定义了与特定嵌入式装置非常相关的扩充类别,而Java程序在各种嵌入式装置的使用者接口该如何呈现的规定就是定义在Profile里头。Profile之中所定义的扩充类别也是根据底层Configuration内所定义的核心类别所建立。
根据某个Profile规范所撰写的Java程序除了可以直接呼叫Profile中定义的扩充类别,也可以直接叫用Configuration里头所定义的核心类别子集与扩充类别。
目前从CLDC所衍生出来的Profile有两种,一种是Handheld Profile,大多数用在PDA上;而另外一种是Mobile Information Device Profile(MIDP),这个Profile是针对移动装置所定义,比方说呼叫器(Pager)移动电话等等,都属于移动装置。
Embedded Java与Personal Java似乎没有包含在两个Configuration任何一个底下,不过他们还是归类在J2ME的范畴之中,而且也衍生出了Java的实时版本(Real-time Specification for Java)。Embedded Java与Personal Java会慢慢被架构在CDC之上的Profile所取代。以Personal Java来说,它的规格与Personal Profile的规格是兼容的。之所以目前还存有Embedded Java与Personal Java这两个名词主要原因是市场上已有大量采用这两种规格的作品,所以短期内Personal Java仍会继续演进,一时还无法归类到J2ME的特定Profile之下。
在Profile中定义了特定种类嵌入式装置的最小配置要求。Profile建构在Configuration之上,其意义是说Profile中所规范的配备需求不可能比Configuration还要低。同时,Profile之中对于显示功能、网络功能、以及耗电能力等相关需求将会比Configuration之中所规定的还要高。底下是一些Profile的配备需求:
配备/Profile | Foundation Profile | Personal Profile | MIDP<?XML:NAMESPACE PREFIX = O /> |
RAM | 至少512K | 至少1 MB | RAM与ROM至少要为512K |
ROM | 至少1024K | 至少2.5 MB | RAM与ROM至少要为512K |
电源 | 不设限 | 不设限 | 通常是使用电池,所以电源有限 |
网络连接能力 | 部分功能 | 部分功能 | 具有低频宽的无线通讯能力 |
其它 | 要有额外的RAM或ROM供应用程序执行 | 要有额外的RAM或ROM供应用程序执行 | 要有额外的RAM或ROM供应用程序执行并储存资料 |
相关文章推荐
- J2ME学习笔记(基础2)
- J2ME学习笔记(基础3)
- J2ME学习笔记(基础7)
- Python基础课程笔记(一)
- <<Python基础教程>>学习笔记 | 第14章 | 网络编程
- 【python学习笔记】基础知识
- python基础学习笔记(四)
- Java学习笔记之基础篇
- 汇编学习笔记---(1)基础知识
- Spring学习笔记1——基础知识
- Java笔记 第二章 Java语法基础
- 《CLR via C#》笔记——线程基础
- 黑马程序员-java基础学习笔记第二篇
- C#学习笔记—语法基础
- Java_jdbc 基础笔记之十一数据库连接 (通用的查询方法)
- 文件传输基础——Java IO流笔记
- RxJava2笔记(2)—线程切换基础
- CSS基础----选择器、标签、属性(笔记03)
- 黑马程序员--编程基础学习笔记二
- [Matlab]基础教程学习笔记(三):编辑器和程序调试