Java嵌入式开发之j2me--三

J2ME中文教程:移动与嵌入式开发指南 本文还有配套的精品资源,点击获取 简介:J2ME(Java 2 Micro Edition)是Java平台用于小型设备开发的子集,本教程提供全面学习资源,帮助开发者掌握在嵌入式和移动设备上开发应用程序的技能。教程覆盖了J2ME的基础知识、架构、开发工具、编程基础、应用发布与部署、性能优化等方面,旨在培养开发者设计适用于多种小型设备的高效Java应用。 1. J2M... 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>  第三节 详细谈谈J2ME配置

  J2ME可以在好几个不同的配置中进行配置。 就像先前提到的,每个配置为一组通用设备提供最小的 Java平台,到目前为止,只有两种配置规范。通过 Java规范定义的这两种配置是 Connected Limited Device Configuration (有限连接设备配置, CLDC )和 Connected Device Configuration (连接设备配置 CDC )。

  CLDC是为使用较小的存储容量的设备设计的 (参见图3 )。 CLDC用于内存在128到 512K之间的消费电子设备, 这一类别中典型代表的设备包含呼叫器、行动电话、PDA和POS终端;而另一方面, CDC用于比 PC机小但是具有比 512K内存多的设备,这一类设备包括互联网络电视系统、机顶盒、POS系统、汽车导航以及娱乐系统。一般来说, CDC使小型设备只要具有少量的资源,至少比台式机要少的资源就能进行Java编程,而CLDC使小型设备所拥有的资源只要比一张智能卡多一点就可以进行Java编程了。



图二解释 设备覆盖的范围 J2ME有两个配置CLDC和 CDC,CLDC是为使用较小的存储容量的设备设计的,而CDC用于比 PC机小但是具有比 512K内存多的设备。


  除了在容量大小和能力上对虚拟机规定了必要条件,配置还规定了类应用程序接口要包含常见的 java.io、 java.net、 java.util和 java.lang包,配置可能还要包括其他需要的程序包。

  CLDC

  CLDC起源可以追溯到1999年JavaOne大会上介绍的Sun的第一个袖珍版 Java和第一个 KVM以及相关的类库,虽然 CLDC和所有的配置都满足成为虚拟机的条件,可它本身还不是虚拟机,CLDC的引用实现只是包含在当前的分布中的 KVM。

  根据规范中所说,运行 CLDC的设备应该有 512K或更少的内存空间、一个有限的电源供给 (通常是使用电池)、有限的或断断续续的网络连接性 ( 9600 bps或更少 )以及多样化的用户界面甚至没有用户界面。 通常说来,这个配置是为个人化的、移动的、有限连接信息设备而设计,比如呼叫器、移动电话和 PDA等。

  与 J2SE相比, CLDC缺少下列所说的这些特征:

  AWT(抽象窗口开发包), Swing或其他图形库

  用户定义类装载器

  类实例的最终化

  弱的引用

  RMI

  Reflection(映射)

  CLDC有四个包: java.lang、 java.util、 java.io和 javax.microedition。 除了 microedition包以外,其他的这几个包都是J2SE包的核心子集,CLDC采用这些J2SE类库,但是把其中一些在微型设备中用不到类、属性、方法去掉了。因此 CLDC类库有许多细微的差别。 如果您想研究J2SE和 CLDC类库之间的差别,请参阅相关文档,在此就不详细说明了。

  想要理解为什么CLDC去除这么多J2SE中重要的类和特征,请回想一下与 CLDC相关的两条基本原理。首先,它只有 512K的内存空间, 而像RMI和映射需要的内存太大了。 其次,配置必须满足为一组通用设备提供最小的 Java平台。 在个人移动信息设备领域中,许多系统都不能支持 J2SE中的众多的高级特征。 例如,许多消费电子产品不能支持浮点数; 因此 Float(浮点类)和 Double(双精度类)就被删除了。 再看另外一个例子,许多系统没有或不提供访问一个文件系统的功能或权限。 因此与文件有关的类也被丢弃了。又如,错误处理是一个代价非常高的过程处理,在许多消费电子设备中,故障恢复是很难的甚至是不可能的。 所以在 CLDC中,许多错误处理类也被删除了。

  java.microedition程序包提供了一个一般的结构来替代许多 J2SE网络输入/输出类。 CLDC一般连接器结构还定义了一个 Connector类,允许许多不同类型的连接能够使用静态方法,下表列出使用同一个Connector类创建和打开五种不同类型的连接的方法:

  HTTP Connector.open("http://www.xyz.com");

  套接字 Connector.open("socket://111.222.111.222:9000");

  通讯端口 Connector.open("comm:1;baudrate=9600");

  数据报 Connector.open("datagram://111.222.111.222");

  文件 Connector.open("file:/xyz.dat");

  一般连接器结构提供给应用程序开发者一个到通用低水平硬件的简单的映射表。成功执行 open语句将返回一个实现一般连接界面的对象。

  CDC

  CDC涵盖了个人电脑与有至少 512K内存的小型设备之间的中间地带。现在,这一类设备通常是共享的、固定的 (不用移动)网络连接信息设备,像电视机机顶盒,网络电视系统、互联网电话与汽车导航/娱乐系统等等。

  首先,CDC基于 J2SE 1.3应用程序接口,包含所有定义在CLDC规范(包括 javax.microedition程序包)中的Java语言应用程序接口。与CLDC相比, CLDC所有缺少的特性和类在 CDC中都被补齐,包含映射、最终化、所有的错误处理类、浮点数、属性、输入/输出 ( File、 FileInputStream等等 )和弱的引用。 一般说来, CDC中预期的类包括一个J2SE子集和一个完整的 CLDC超集,如图4中所示:



图4 :J2SE、CLDC和CDC的关系

  就像使用所有的配置一样,CDC有基层虚拟机的具体的必要条件。 根据 CDC规范,基层虚拟机必须提供实现完整的 Java虚拟机的支持 。 如果虚拟机实现有一个用于激活设备的本地方法的界面,它必须兼容 JNI 1.1版本。 如果虚拟机实现有一个调试界面,它必须兼容 Java虚拟机调试界面 ( JVMDI )规范。 如果虚拟机有一个简表界面,它必须兼容 Java虚拟机简表界面 ( JVMPI )规范。 可见,为了实现这些功能,CDC肯定会变得很大,就不能称其为K虚拟机了,因此,我们通常称用于CDC的虚拟机为 CVM,这里的 C代表 compact、connected、consumer。
Java嵌入式开发之j2me--一 Java嵌入式开发之j2me--二 Java嵌入式开发之j2me--三 Java嵌入式开发之j2me--四 Java嵌入式开发之j2me--五 Java嵌入式开发之j2me--六
J2ME平台上的Java手机游戏模拟器实战指南 随着移动互联网的高速发展,手机游戏逐渐成为人们娱乐生活的重要部分。Java手机游戏模拟器为手机游戏爱好者提供了一个重要的平台,它允许用户在非移动设备上运行J2ME(Java 2 Micro Edition)编写的手机游戏。本章将介绍Java手机游戏模拟器的基本概念、它的发展历程以及在当今社会中的应用价值。KEmulator模拟器是一个专门为Java开发的手机游戏模拟器,它可以在Windows桌面操作系统上运行,提供了接近真实手机环境的模拟功能。 阅读详情

相关推荐

j2me嵌入式应用与开发网络编程

这是一个j2me手机软件开发网络编程的视频,这是其中一部分。

Java嵌入式开发之J2ME(一)

作者:move2008   来源:move2008.com    J2ME之谜  第一节 引言 J2ME概述  到目前为止,大部分人都已非常熟悉 Java 2平台,以及 Sun如何把 Java技术分成三个版本 (标准版、袖珍版以及企业版),Sun 在1999年6月时推出了 Java 2袖珍版 (J2ME)来满足消费电子和嵌入设备的需要。J2ME是为了那些使用有限的能源、

mobilechannel的专栏 1342

J2ME嵌入式开发详解

在详细讲解利用J2ME开发移动程序之前,为了使读者对整个移动开发技术领域有个全面的了解,有必要对目前的移动开发技术领域做一概略介绍。

Java嵌入式开发之J2ME(二)

作者:Move2008   来源:Move2008.com    第二节 J2ME的体系结构  现在个人计算机系统的数量和种类已经发展到无法控制的地步,请你想一想,你编写的程序运行在“信息家电”舞台的情景吧,这些信息家电包括呼叫器,行动电话,像Palm这样的个人数字助手(PDA),电视机顶盒,POS终端以及其他的消费电子设备。现在全世界上光是手提电话生产商就有许多,更不

mobilechannel的专栏 1299

02.Palantir Foundry平台功能和应用全景图

本文深入解析 Palantir Foundry 平台核心功能与应用全景。

687

VSCode配置C/C++开发环境:从零安装MinGW-w64并运行第一个C程序

在Windows系统上搭建C语言开发环境时,很多初学者混淆编辑器、编译器与调试器的分工,导致配置过程屡屡受挫。理解VSCode作为轻量级编辑器的定位,以及MinGW-w64提供的gcc编译器在源码编译中的核心作用,是顺利完成环境配置的关键。环境变量的正确设置直接影响gcc命令能否全局调用,而C/C++插件则赋予编辑器语法高亮与智能提示能力。通过安装VSCode、配置MinGW-w64、安装插件、汉化界面并运行一个最简单的hello.c程序,就能系统掌握这套开源工具链的完整工作流。无论是用于课程学习、算法练习

weixin_42531923的博客 531

Java嵌入式开发之j2me--六

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/java

java专栏 440

GD32H7系列SRAM优化配置实战指南

本文详细解析了GD32H7系列MCU的SRAM架构,包括ITCM、DTCM、AXI SRAM等关键内存区域的特点与性能差异。通过实战指南,指导开发者如何通过配置寄存器和链接脚本,优化内存布局以提升系统性能,并重点探讨了DMA操作与CPU缓存一致性的解决方案,帮助充分发挥GD32H7的高性能潜力。

weixin_29169899的博客 518

Java嵌入式开发之J2ME(四)

 作者:Move2008   来源:Move2008.com   第四节 谈谈J2ME简表  虽然配置为一组通用设备提供了最小的 Java平台,但是应用程序开发者感兴趣的是为一个个别的设备生产应用程序,当他们只是使用配置的话,他们编写的应用程序就会有一些欠缺。 配置必须满足所有的设备的最小的要求, 用户界面、输入机制和数据持久性有高度地设备具体性,每一种

mobilechannel的专栏 1017

【5G核心网】Packet Forwarding Model 数据包转发模型

CP 通过建立,修改,删除 PFCP 会话上下文,以及通过为每个 PFCP 会话赏析哪问提供 PDR FAR QER URR BAR,来控制 UP 面的数据包处理。 每一个 PDR 都包含 PDI(Packet Detection Information,包探测信息),一个或多个字段,与输入数据包进行匹配,并可能与以下规则相关联,从而提供了适用于与 PDI 匹配的数据包的指令集: - One FAR(包含了处理数据包的相关指令) an Apply Act...

zhonglinzhang 1万+

STM32开发 -- GPIO详解

之前有简单讲过GPIO工作模式和寄存器,还是有点没搞明白。这次需要全方位的看一下了。 一、数据手册 1、STM32F105RC引脚说明 可知:STM32F105RC 一共有4组IO口 一共16X3+3=51个IO GPIOA0~A15 GPIOB0~B15 GPIOC0~C15 GPIOD0~D2 2、程序定义 GPIO端口号 STM32F1...

不积跬步,无以至千里 5万+

Java嵌入式开发之J2ME(三)

 作者:Move2008   来源:Move2008.com    第三节 详细谈谈J2ME配置  J2ME可以在好几个不同的配置中进行配置。 就像先前提到的,每个配置为一组通用设备提供最小的 Java平台,到目前为止,只有两种配置规范。通过 Java规范定义的这两种配置是 Connected Limited Device Configuration (

mobilechannel的专栏 1098

【Bug已解决】npm install -g @anthropic-ai/claude-code 出现 EACCES: permission denied 解决方案

方案适用场景推荐指数nvm 管理 Node长期开发环境,一次配置永久生效⭐⭐⭐⭐⭐修改 npm 全局目录不想引入 nvm,快速解决⭐⭐⭐⭐修复现有目录权限之前用过 sudo 装包,需要修复⭐⭐⭐Windows 管理员/改目录Windows 平台专用⭐⭐⭐⭐官方原生安装脚本想彻底避开 npm 权限问题⭐⭐⭐⭐报的本质是npm 全局安装目录的属主权限与当前执行用户不匹配,而不是 npm 或 Claude Code 本身有问题。不要用sudo"强行"解决。

一键难忘的博客 1万+

如何学好J2ME

     现在工作很忙,最近没有时间写技术文章了。因此今天谈谈自己学习J2ME的一些心得。希望对大家有所帮助。同时欢迎大家谈谈自己的感受!具备良好的java语言基础,不要还没有学习java语言就拿起一本J2ME的书来看。这样效果并不好,相反如果你有良好的java语言基础的话,J2ME就显得比较容易掌握!如果你决定开始学习J2ME了,那么首先你应该清楚J2ME的体系结构是什么样的。当你真

mingjava的专栏 4220

标准测试测试数据STDF学习笔记

本文介绍了STDF(Standard Test Data Format)文件的结构与解析方法。首先详细说明了STDF记录的组成,包括记录头类型(REC_TYP和REC_SUB)、数据类型定义、时间日期格式以及无效数据标识。重点分析了25种主要记录类型的功能、数据内容和出现位置,如FAR、MIR、MRR等关键记录。然后介绍了基于pystdf开源工具的解析方法,包括自带脚本的使用和自编程解析流程,通过事件驱动机制处理数据流。特别指出测试数据是按照PIR→PTR/MPR/FTR→PRR的循环模式组织。文章为ATE

歌颂苦难的行为是无耻的; 1513

【SpringBoot 4.x 第2节】夯爆了,学习 Spring Boot 4.x 前,需要具备哪些 Java 基础?

🏆 本文收录于 《滚雪球学 Spring Boot 4.x》 专栏。 本专栏面向 有一点 Java 基础,但没有系统学过 Spring Boot 的读者,采用“滚雪球式学习法”:先跑通、再理解、再重构、再上线,最终带你从第一个 Hello API 一路完成一个可部署、可监控、可扩展的后端项目。

**My Coding Family** 4567

J2ME-Loader快速入门:如何在5分钟内运行第一个J2ME游戏

J2ME-Loader是一款强大的Android平台J2ME模拟器,让你能够在现代安卓设备上重温经典Java ME游戏。本指南将带你快速掌握J2ME-Loader的安装与使用,无需复杂配置即可畅玩怀旧游戏。 ## 📱 准备工作:获取J2ME-Loader 要开始使用J2ME-Loader,首先需要获取应用程序。你可以通过以下两种方式之一: 1. **直接安装**:从可靠来源下载J2ME-L

gitblog_00168的博客 1117

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

J2ME

  J2ME(Java 2 micro Edition)是一种高度优化的Java运行环境,针对市面上的大量消费类电 子设备,例如Papers、cellularphones(蜂窝电话), screen-phones(可视电话?)、digital set-top boxes(数字机顶盒)、car navigation systems(汽车导航系统)等等。 J2ME技术在1999年的JavaOne De

iseeiconquer的专栏 2608

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

J2me平台

             Sun凭借最新的Java技术试图将其进一步实现为开发者的目标平台,然而Java平台自身却分成了三种平台:Standard版、Enterprise版和Micro版。Micro版,也就是所谓的J2ME,从问世伊始就专门设计为供内存量小和处理能力较低的移动设备作为Java开发平台使用。从表面上看,这样做对那些希望提升应用程序的移动计算能力的开发者来说是一件好事。然而,“移动

冷枫@优快云 2714

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

J2ME应用基础

自从1995年面世以来,已经大大超出了最初Applet应用范畴,在Java发布两年后Sun公司推出了主要针对于企业级应用的J2EE(Java 2 Enterprise Edition),而最近加入到Java产品家族的是J2ME(Java 2 Micro Edition),它的目标直指所谓的“信息设备”,包括电视机顶盒到移动电话的一系列产品。 Java版本目前Java主要包括以下三种版本: ● 标准

Herr Apfel的专栏 1641

J2SE J2EE J2ME的区别

J2SE J2EE J2ME的区别多数编程语言都有预选编译好的类库以支持各种特定的功能,在Java中,类库以包(package)的形式提供,不同版本的Java提供不同的包,以面向特定的应用。Java2平台包括标准版(J2SE)、企业版(J2EE)和微缩版(J2ME)三个版本:Standard Edition(标准版) J2SE 包含那些构成Java语言核心的类。比如:数据库连接、接口定义、输入

CLOCK 1万+

Java嵌入式开发之j2me--一

google_ad_client = "pub-8800625213955058";/* 336x280, 创建于 07-11-21 */google_ad_slot = "0989131976";google_ad_width = 336;google_ad_height = 280;//<script type="text/java

java专栏 399

J2ME开发入门专题系列之一:J2ME概述

J2ME开发入门专题系列之一:J2ME概述 关键字:Java;J2ME来  源:空中网我们将从定义 J2ME 开始,从最简单的J2ME 是什么开始讲起。然后讨论它的总体架构并学习 J2ME 目标设备。作为架构讨论的一部分,我们将提供有关简表和配置的概述。同时我们会简要介绍打包和配置 J2ME 应用程序过程中的一些注意事项。J2ME 是什么?Sun Microsystems 将 J2ME 定义为“一

bishopinred的专栏 1304

J2ME概述(转)

    我们将从定义 J2ME 开始,从最简单的J2ME 是什么开始讲起。然后讨论它的总体架构并学习 J2ME 目标设备。作为架构讨论的一部分,我们将提供有关简表和配置的概述。同时我们会简要介绍打包和配置 J2ME 应用程序过程中的一些注意事项。J2ME 是什么?  &nb sp; Sun Microsystems 将 J2ME 定义为“一种以广泛的消费性产品为目标的的高度优化的 Java 运行时

!Java 2996

【JAVA】J2ME使用教程

J2ME(Java 2 Platform, Micro Edition)是为嵌入式设备和移动电话等小型设备设计的Java平台版本。它允许开发者使用Java语言为这些设备编写应用程序。本文是一个简单的J2ME使用教程

大雨淅淅的博客 1246

J2ME的现状与发展

SUN中国工程研究院 软件技术中心 王刚摘要本文简要介绍了J2ME的有关概念和现状、MIDP2.0的最新特点,并对J2ME的竞争对手、J2ME应用程序的兼容性以及其在Web Services中的应用做了阐述和分析。什么是J2ME?当JAVA平台发展到JAVA 2的版本以后,为了适应不同级别计算机硬件的开发需要,JAVA平台形成了三个主要分支:Java 2, Standard E

优快云_document的专栏 3347
上一篇: Java嵌入式开发之j2me--四
下一篇: 编译器-Javac
java169
博客等级 码龄18年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值