Java ME 以往称作J2ME(Java Platform,Micro Edition),是为机顶盒、移动电话和PDA之类嵌入式消费电子设备提供的Java语言平台,包括虚拟机和一系列标准化的Java API。它和Java SE、Java EE一起构成Java技术的三大版本,并且同样是通过JCP(Java Community Process)制订的。

Java ME(Java 2 Micro Edition)是Java 2的一个组成部分,它与J2SE、J2EE并称。Java ME是一种高度优化的Java运行环境,主要针对消费类电子设备的,例如蜂窝电话和可视电话、数字机顶盒、汽车导航系统等等。

JAVA ME总体的的运行环境和目标更加多样化,但其中每一种产品的用途却更为单一,而且资源限制也更加严格。为了在达到标准化和兼容性的同时尽量满足不同方面的需求,JAVA ME的架构分为Configuration、Profile和Optional Packages(可选包)。它们的组合取舍形成了具体的运行环境。

Configuration主要是对设备纵向的分类,分类依据包括存储和处理能力,其中定义了虚拟机特性和基本的类库。已经标准化的Configuration有- Connected Limited Device Configuration(CLDC)和Connected Device Configuration(CDC)。
Profile建立在Configuration基础之上,一起构成了完整的运行环境。它对设备横向分类,针对特定领域细分市场,内容主要包括特定用途的类库和API。CLDC上已经标准化的Profile有Mobile Information Device Profile (MIDP)和Information Module Profile(IMP),而CDC上标准化的Profile有Foundation Profile(FP)、Personal Basis Profile(PBP)和Personal Profile(PP)。
可选包独立于前面两者提供附加的、模块化的和更为多样化的功能。目前标准化的可选包包括数据库访问、多媒体应用、蓝牙等等。
J2ME 在设计其规格的时候,遵循着「对于各种不同的装置而造出一个单一的开发系统是没有意义的事」这个基本原则。于是 JAVA ME 先将所有的嵌入式装置大体上区分为两种 :一种是运算功能有限、电力供应也有限的嵌入式装置(比方说PDA 、手机);另外一种则是运算能力相对较佳、并且在电力供应上相对比较充足的嵌入式装置 (比方说冷气机、电冰箱、电视机顶盒 (set-top box))。因为这两种型态的嵌入式装置,所以Java 引入了一个叫做Configuration 的概念,然后把上述运算功能有限、电力有限的嵌入式装置定义在Connected Limited Device Configuration(CLDC)规格之中;而另外一种装置则规范为 Connected Device Configuration(CDC)规格。也就是说, JAVA ME 先把所有的嵌入式装置利用Configuration 的概念区隔成两种抽象的型态。
其实在这里大家可以把Configuration 当作是JAVA ME 对于两种类型嵌入式装置的规格,而这些规格之中定义了这些装置至少要符合的运算能力、供电能力、记忆体大小等规范,同时也定了一组在这些装置上执行的 Java 程序所能使用的类别函式库、这些规范之中所定义的类别函式库为 Java 标准核心类别函式库的子集合以及与该型态装置特性相符的扩充类别函式库。比方就CLDC 的规范来说,可以支援的核心类别函式库为java.lang.* 、java io.*、java.util.*,而支援的扩充类别函式库为javamicroeditionio.*。区分出两种主要的Configuration 之後,JAVA ME 接著在定义出Profile的概念。Profile 是架构在Configuration 之上的规格。之所以有Profile的概念,是为了要更明确地区分出各种嵌入式装置上Java 程序该如何开发以及它们应该具有哪些功能。因此Profile 之中定义了与特定嵌入式装置非常相关的扩充类别函式库,而 Java 程序在各种嵌入式装置上的使用者介面该如何呈现就是定义在Profile 里头。Profile 之中所定义的扩充类别函式库是根据底层Configuration 内所定义的核心类别函式库所建立。

转载于:https://www.cnblogs.com/linvaluable/archive/2013/02/23/2921454.html

BlackBerry 开发笔记入门 J2ME相关推荐

  1. BlackBerry 开发笔记入门

    Blackberry(黑莓)是加拿大RIM公司(Research in Motion Ltd.,,RIM)制造的手机.加拿大RIM公司主要产品为手提通讯设备Blackberry(黑莓),于1999年创 ...

  2. BlackBerry 开发笔记入门 控件简介

    1.screem 2.layout 3.event 一.Screem BlackBerry应用是由一个一个页面(screem)构成,其中有一个入口页面,即应用程序的主页面Mainapplication ...

  3. [分享] 新书推荐 -《黑莓(BlackBerry)开发从入门到精通》 | 黑莓时光

    今天看到一本刚出版不久的书,<黑莓(BlackBerry)开发从入门到精通>,属于技术类书籍,通过 18 章的内容,介绍了BlackBerry 开发平台简介.BlackBerry 开发平台 ...

  4. android大疆飞控界面,DJI Android SDK 开发笔记(入门篇)

    ##大疆SDK开发笔记## #1.文档相关 2.Android SDK文档 接入Android的SDK都在这部分,飞控相关的接口. 3.Android UX SDK文档 大疆自定义的组件,已经跟飞机关 ...

  5. Flutter仿美团应用开发笔记-入门篇

    Flutter概览 Flutter是谷歌发布的跨平台开发框架(通过极少的改动即可运行在桌面端,web端,Android与IOS且UI具有高度一致性)并将作为谷歌新操作系统Fuchsia的UI框架.在移 ...

  6. MOOC微信小程序开发从入门到实践~笔记

    MOOC微信小程序开发从入门到实践~笔记 1.图标网站[icon]www.iconfont.cn 2.新建项目是必须需要AppID 3.app.js是页面逻辑文件 app.json是页面全局配置文件( ...

  7. Moveit!入门——古月居机械臂开发笔记(二)

    Moveit!入门--古月居机械臂开发笔记(二) 引言 ROS机械臂开发_机器视觉与物体抓取 1.ROS中的运动学插件 2.Moveit!碰撞检测 规划场景 3.Pick and Place 4.RO ...

  8. 《Python+Kivy(App开发)从入门到实践》自学笔记:打包——Windwos打包

    章节目录及知识点总览 6.1 Windows打包 将python程序编译成可以在windows上运行的.exe程序. 操作过程中踩过的坑: 1.书上使用的测试文件没找到(使用画板程序测试) 2.通过6 ...

  9. Cocos2d-x3.X入门游戏实例(一) 经典飞机大战开发笔记

    有一个多月没有写学习笔记了,主要是在学习了一段时间后觉得想整个小游戏,选来选去选择了微信飞机大战作为处女作.飞机大战内容简单,比较适合刚学习Cocos2dx的新手拿来练手,而且网上的教程和源码都很多, ...

最新文章

  1. 一种注册表沙箱的思路、实现——研究Reactos中注册表函数的实现2
  2. 2017-2018-1 20155207 《信息安全系统设计基础》第四周学习总结
  3. mysql子查询存到另一张表_MySQL多表查询与子查询
  4. C#和VB的关键字的对照表
  5. Javascript中的对象拷贝(对象复制/克隆)
  6. 苹果描述文件服务器证书无效,iOS 描述文件重新配置失效问题,解决方法!
  7. Java练习——小游戏 模拟雷电
  8. AC/DC电源模块输入电压范围
  9. 霍尔逻辑Hoare Logic
  10. 计算机专业课只考c语言的学校,【择校必看】十三所计算机专业课只考数据结构的985院校!...
  11. C语言午餐,【故事优选C】安详的午餐
  12. 算法 - 求两个自然数的最大公约数(C++)
  13. 2008北京奥运会足球赛程(男足)
  14. win10字体设置修改方法【乡巴佬】
  15. 2022秋招前端面试题(五)(附答案)
  16. 彻底了解DVD:从入门到精通(一)[转]
  17. 软件开发进度管理探析
  18. matlab 吸波材料,如何计算多层吸波材料的反射率 - 材料 - 小木虫 - 学术 科研 互动社区...
  19. 【linux】 apache多后缀文件解析漏洞复现
  20. 计算机毕业设计(附源码)python学衡国学堂围棋社管理系统

热门文章

  1. Android应用第一次安装成功点击“打开”后Home键切出应用后再点击桌面图标返回导致应用重启问题...
  2. 【hihocoder 1039 字符串消除】模拟
  3. 一个非常实用的 div+css 实现的导航条
  4. python 图像分析 边框_Python 去除图片纯色边框(qbit)
  5. 《工程师文化行为自我分享》_文化对于鼓励创新行为至关重要
  6. openstack用户列表_什么是OpenStack超级用户?
  7. JavaScript this绑定规则
  8. 实践 | 在MySql中,这四种方法可以避免重复插入数据!
  9. Bootstrap使用 .dropdown-menu 类创建下拉菜单
  10. Bootstrap 警告块