J2ME
- 格式:ppt
- 大小:49.00 KB
- 文档页数:5


[什么是j2ee]J2EE、J2SE、J2ME是什么意
思?
篇一 : J2EE、J2SE、J2ME是什么意思?
Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME
和J2EE。这三块相互补充,应用范围不同。 J2SE就是Java2的标准版,主要用于桌面应用软件的编程;
J2ME主要应用于嵌入是系统开发,如手机和PDA的编程; J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电
子商务网站和ERP系统。
先学习j2se
要学习j2ee就要先学习j2se,刚开始学习j2se先建议不要使用IDE,
然后渐渐的过渡到使用IDE开发,毕竟用它方便嘛。学习j2se推荐两本书,《java2核心技术一二卷》,《java编程思想》,《java模式》。
其中《java编程思想》要研读,精读。这一段时间是基本功学习,时
间会很长,也可能很短,这要看学习者自身水平而定。 不要被IDE纠缠
在学习java和j2ee过程中,你会遇到五花八门的IDE,不要被他们迷惑,学JAVA的时候,要学语言本身的东西,不要太在意IDE的附
加功能,JAVA编程在不同IDE之间的转换是很容易的,过于的在意IDE的功能反而容易耽误对语言本身的理解。目前流行的IDE有
jbuilder,eclipse和eclipse的加强版WSAD。用好其中一个就可以了,
推荐从eclipse入手j2ee。因为Jbuilder更适合于写j2se程序。 选择和学习服务器使用配置
当你有了j2se和IDE的经验时,可以开始j2ee的学习了,web服务器:tomcat,勿庸置疑,tomcat为学习web服务首选。而应用服务器
目前主要有三个:jboss、weblogic、websphere。有很多项目开始采用
jboss,并且有大量的公司开始做websphere或weblogic向jboss应用
服务器的移植,这里要说的是,学习tomcat和jboss我认为是首选,
MTK系统下的J2ME运行平台设计
现在Java技术十分流行,发展势头强劲,而且在SUN公司推出了J2ME平台后,众多移动式系统都纷纷支持Java应用程序。由于Java已经成为了业界公认的通用网络语言,具有超强的跨平台性,所以Java这种Write once,Run anywhere的特性被目前几乎所有的手机系统开发商所承认并运用。无一例外,当今的智能手机操作系统都支持KJava技术。为了保证手机操作系统支持运行Java程序,需要将Java虚拟机移植到手机操作系统上。由于手机这种移动式信息设备都采用小容量的Flash和RAM,所以就要求虚拟机体积更小,实时效率更高,故这种Java虚拟机被称为KVM(K Virtual Machine)。
由于J2ME是以消费性产品为目标而设计的Java运行环境,专门针对移动电话、数字机顶盒和汽车导航系统,因而影响力巨大。本文将研究在MTK手机操作系统上实现嵌入式Java。整个J2ME运行平台包括Java应用的下载、安装、运行及触摸屏支持等一系列功能。
1 相关技术研究
1.1 J2ME平台
现在的Java系统是一个全方位的开发、运行平台,可以在任何计算环境中实现。在嵌入式系统,SUN公司推出了J2 ME(Java 2 platform Micro Edition)。
J2ME是Java 2标准版本的微型版本,支持各种各样的消费类产品和嵌入式设备,如移动电话、PDA、互联网可视电话、数字机顶盒、车载娱乐和导航系统、网络交换设备以及信息家电等。J2ME是为了那些使用有限的能源、有限的网络连接(通常是无线连接)以及有限图形用户界面能力的设备开发的。
J2ME体系结构如图1所示。其中简表层、配置层和Java虚拟机是J2ME的组成部分。J2ME是一个简化的Java,是针对各种不同的低端设备而设计的。为了满足各种环境,J2ME设计了简表一配置规范。配置是一个语言特性和核心类的配置规范,针对不同的环境(内存、显示、网络连接和处理能力)给定不同的配置。也就是定义了该环境的Java语言子集和核心类库,虚拟机开发者遵照此配置来开发虚拟机。最著名的两个配置是连接设备配置(CDC)和连接有限设备配置(CLDC)。
J2ME专业手机游戏开发基础
游戏的基本结构
游戏是什么呢?在游戏中,往往是显示各种各样的画面,玩家可以做一些设定好的控制,画面根据玩家的控制有所变化。从这儿可以看出,游戏至少需要三个功能-显示画面,接受玩家输入和对输入产生反馈。这就是常说的渲染,输入输出和逻辑三个模块。将这三个模块组合在一起有很多方法。比如事件驱动-画面保持不变直到接受到输入事件,程序进行逻辑运算然后改变画面。而游戏往往不是这样,游戏是时间驱动的。也就是说无论有没有输入,游戏都在不停的循环-检查是否有输入,运行逻辑,渲染画面。这里我多说一句,其实什么样的结构并不能区别一个程序是不是游戏,其实只要可以互动娱乐的程序就可以称为游戏,也不一定要用时间驱动,但采用时间驱动是专业游戏的普遍做法,也是很容易接受的方法-因为从一定程度上讲,游戏很像电影,随着时间流逝画面在改变。
既然是时间驱动,游戏中就会有帧的概念。所谓帧就是某个时刻显示在屏幕上的画面。从整体上看,游戏就是一系列的帧不断播放着,像动画片一样,不过玩家可以通过交互改变播放的内容。而我们开发游戏的主要任务就是安排每一帧的内容。在每一次游戏循环中,我们需要搜集玩家的输入、运行逻辑以更新游戏的数据、根据更新后的数据安排下一帧显示的内容。 所以一个最简单的游戏结构就是:
0 初始化游戏
1 是否结束游戏(Yes:转到6)
2 搜集玩家输入信息
3 运行游戏逻辑
4 更新下一帧,显示下一帧
5 回到1
6 清理,结束游戏
这是一个最基本的结构,特别对于比较简单的J2ME游戏来说,这个结构更加有代表性。下面我们将分别讲述专业手机游戏如何实现这个结构中的各个内容。
游戏循环的实现
我们需要一个进入后就一直循环下去直到游戏结束的结构。线程正好可以实现。最通常的做法是让Canvas实现Runnable接口。于是我们就可以实现run方法。下面是一个run方法简化版:
J2ME API笔记
第 1 页 共 43 页 Alert 显示一个包含消息的对话框 AlertType rithmeticException ArrayIndexOutOfBoundsException ArrayStoreException Boolean Byte ByteArrayInputStream ByteArrayOutputStream Calendar 日历; Canvas 画布 Certificate CertificateException Character Choice ChoiceGroup 单选框与复选框 Class ClassCastException ClassNotFoundException CommConnection Command 命令; CommandListener Connection ConnectionNotFoundException Connector ContentConnection Control Controllable CustomItem DataInput DataInputStream DataOutput DataOutputStream Datagram DatagramConnection Date DateField 接收日期的输入 Display Displayable Double EOFException EmptyStackException Enumeration Error J2ME API笔记
第 2 页 共 43 页 Exception Float Font Form 容器类:能显示从Item派生的类 GameCanvas Gauge 显示图形化的进度条 Graphics 虚拟画笔 Hashtable Hash表 二维集合; HttpConnection HttpsConnection IOException IllegalAccessException IllegalArgumentException IllegalMonitorStateException IllegalStateException IllegalThreadStateException Image 创建图片文件 ImageItem 显示存储在文件中的图像 IndexOutOfBoundsException InputConnection InputStream InputStreamReader InstantiationException Integer InterruptedException InterruptedIOException InvalidRecordIDException Item Form的派生类; ItemCommandListener ItemStateListener Layer 图层父类 LayerManager 图层管理 List 显示一个条目如菜单 Long MIDlet MIDletStateChangeException Manager Math MediaException NegativeArraySizeException NoClassDefFoundError NoSuchElementException NullPointerException NumberFormatException J2ME API笔记