Java语言在手机程序开发中的应用.doc_第1页
Java语言在手机程序开发中的应用.doc_第2页
Java语言在手机程序开发中的应用.doc_第3页
Java语言在手机程序开发中的应用.doc_第4页
Java语言在手机程序开发中的应用.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

郑州电子信息职业技术学院毕 业 论 文课题名称:Java语言在手机程序开发中的应用作 者: 刘通 学 号:_ 0905270120_ 系 别: 信息管理系 专 业: 计算机应用技术 指导教师:_ 王泽宇_ 2012年 3月31日中文摘要Java语言在手机程序开发中的应用摘 要岁着我们社会的的发展,科技创新的脚步越来越快,手机也进入我们的视野之中,成为人们生活所必不可少的物品,随之java也越来越被人们所熟知。从最早的手机支持Java开始,Java语言在手机领域开发中的作用就变得超乎想象。手机上支持java多指应用的Java直译器能读出的软件程序,而现在市场上手机类型也越来越多,手机平台也在不断的更新换代,但在那么多跟新换代的背后,Java语言在其应用开发开发中,依旧独占着不可或缺的地位。本文主要对Java语言的各种特性以及在手机程序开发中的实际运用做分析,论述Java语言在手机程序开发中的作用有那些,为何Java在手机程序开发中不可或缺。关键词:手机程序;Java直译器;手机平台郑州电子信息职业技术学院2012届毕业论文目 录摘 要I1 引言12 Java语言的历史12.1 java语言的诞生12.2 java语言的运用23 Java语言的特性33.1 Java语言的的11种特性33.2 小结44 手机的程序开发环境44.1 Android(安卓)平台44.2 Symbian(塞班)平台54.3 Windows phone/mobile/ios65 Java语言在手机中的结合运用65.1 Java在手机游戏中的应用类65.2为什么要选择Java语言作为手机游戏的开发66 结论8参考文献91 引言随着新兴科技的日新月异,我们生活中手机已是必不可缺的东西,而我们的手机,也在不断的改变着,我们能否抓住手机更新换代的脚步?Java语言作为手机起始发展的奠定软件,还能否在今后有更加出彩的表现?下面我们就论述一下Java语言在手机程序开发中的应用。2 Java语言的历史2.1 java语言的诞生Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。Java平台由Java虚拟机(Java Virtual Machine)和Java 应用编程接口(Application Programming Interface、简称API)构成。Java 应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。现在Java平台已经嵌入了几乎所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。目前常用的Java平台基于Java1.4,最近版本为Java1.7。 Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。2009年04月20日,oracle(甲骨文)宣布收购sun。Java是一种简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言。当1995年SUN推出Java语言之后,全世界的目光都被这个神奇的语言所吸引。那么Java到底有何神奇之处呢? Java语言其实最早诞生于1991年,起初被称为OAK语言,是SUN公司为一些消费性电子产品而设计的一个通用环境。他们最初的目的只是为了开发一种独立于平台的软件技术,而且在网络出现之前,OAK可以说是默默无闻,甚至差点夭折。但是,网络的出现改变了OAK的命运。 在Java出现以前,Internet上的信息内容都是一些乏味死板的HTML文档。这对于那些迷恋于WEB浏览的人们来说简直不可容忍。他们迫切希望能在WEB中看到一些交互式的内容,开发人员也极希望能够在WEB上创建一类无需考虑软硬件平台就可以执行的应用程序,当然这些程序还要有极大的安全保障。对于用户的这种要求,传统的编程语言显得无能为力。SUN的工程师敏锐地察觉到了这一点,从1994年起,他们开始将OAK技术应用于WEB上,并且开发出了HotJava的第一个版本。当SUN公司1995年正式以Java这个名字推出的时候,几乎所有的WEB开发人员都心生感叹:噢,这正是我想要的!于是Java成了一颗耀眼的明星,丑小鸭一下了变成了白天鹅。2.2 java语言的运用JDBC(Java Database Connectivity)提供连接各种关系数据库的统一接口,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。 EJB(Enterprise JavaBeans)使得开发者方便地创建、部署和管理跨平台的基于组件的企业应用。java RMI(Java Remote Method Invocation)用来开发分布式Java应用程序。一个Java对象的方法能被远程Java虚拟机调用。这样,远程方法激活可以发生在对等的两端,也可以发生在客户端和服务器之间,只要双方的应用程序都是用Java写的。Java IDL(Java Interface Definition Language) 提供与CORBA(Common Object Request Broker Architecture)的无缝的互操作性。这使得Java能集成异构的商务信息资源。JNDI(Java Naming and Directory Interface)提供从Java平台到的统一的无缝的连接。这个接口屏蔽了企业网络所使用的各种命名和目录服务。 JMAPI(Java Management API)为异构网络上系统、网络和服务管理的开发提供一整套丰富的对象和方法。 JMS(Java Message Service)提供企业消息服务,如可靠的消息队列、发布和订阅通信、以及有关推拉(Push/Pull)技术的各个方面。JTS(Java transaction Service)提供存取事务处理资源的开放标准,这些事务处理资源包括事务处理应用程序、事务处理管理及监控。在Java技术中,值得关注的还有JavaBeans,它是一个开放的标准的组件体系结构,它独立于平台,但使用Java语言。一个JavaBean是一个满足JavaBeans规范的Java类,通常定义了一个现实世界的事物或概念。一个JavaBean的主要特征包括属性、方法和事件。通常,在一个支持JavaBeans规范的开发环境(如Sun Java Studio 和IBM VisualAge for Java)中,可以可视地操作JavaBean,也可以使用JavaBean构造出新的JavaBean。JavaBean的优势还在于Java带来的可移植性。现在,EJB (Enterprise JavaBeans) 将JavaBean概念扩展到Java服务端组件体系结构,这个模型支持多层的分布式对象应用。除了JavaBeans,典型的组件体系结构还有DCOM和CORBA,关于这些组件体系结构的深入讨论超出了本书的范围。3 Java语言的特性3.1 Java语言的的11种特性Java语言是简单的。Java语言的语法与C语言和C+语言很接近,使得大多数程序员很容易学习和使用Java。另一方面,Java丢弃了C+ 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java语言不使用指针,并提供了自动的废料收集,使得程序员不必为内存管理而担忧。 Java语言是一个面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。Java语言全面支持动态绑定,而C+ 语言只对虚函数使用动态绑定。总之,Java语言是一个纯的面向对象程序设计语言。Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、 ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Java语言是健壮的。Java的强类型机制、异常处理、废料的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。Java的安全检查机制使得Java更具健壮性。Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。除了Java语言具有的许多安全特性以外,Java对通过网络下载的类具有一个安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查,并提供安全管理机制(类SecurityManager)让Java应用设置安全哨兵。 Java语言是体系结构中立的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件), 然后可以在实现这个Java平台的任何系统中运行。这种途径适合于异构的网络环境和软件的分发。 Java语言是可移植的。这种可移植性来源于体系结构中立性,另外,Java还严格规定了各个基本数据类型的长度。Java系统本身也具有很强的可移植性,Java编译器是用Java实现的,Java的运行环境是用ANSI C实现的。 Java语言是解释型的。如前所述,Java程序在Java平台上被编译为字节码格式, 然后可以在实现这个Java平台的任何系统中运行。在运行时,Java平台中的Java解释器对这些字节码进行解释执行,执行过程中需要的类在联接阶段被载入到运行环境中。Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C+。 Java语言是多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。通常有两种方法来创建线程:其一,使用型构为Thread(Runnable) 的构造子将一个实现了Runnable接口的对象包装成一个线程,其二,从Thread类派生出子类并重写run方法,使用该子类创建的对象即为线程。值得注意的是Thread类已经实现了Runnable接口,因此,任何一个线程均有它的run方法,而run方法中包含了线程所要运行的代码。线程的活动由一组方法来控制。 Java语言支持多个线程的同时执行,并提供多线程之间的同步机制(关键字为synchronized)。Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。 3.2 小结Java语言的优良特性使得Java应用具有无比的健壮性和可靠性,这也减少了应用系统的维护费用。Java对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间并降低成本。Java的编译一次,到处可运行的特性使得它能够提供一个随处可用的开放结构和在多平台之间传递信息的低成本方式。特别是Java企业应用编程接口(Java Enterprise APIs)为企业计算及电子商务应用系统提供了有关技术和丰富的类库。4 手机的程序开发环境4.1 Android(安卓)平台Android:是谷歌于2007年公布的开放式源代码手机系统,它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。这使得越来越多的人关注这个操作系统。 Android平台主要机型有HTC三星,LG摩托罗拉,由于其开放源代码优势的Android系统有最大的发展前景. 要使用Android开发必须有深厚的Java语言功底,因为这是安卓的开发语言绝大部分是java。Android支持使用Java作为编程语言来开发应用程序,但Android的Java开发方面从接口到功能,都有层出不穷的变化。考虑到Java虚拟机的效率和资源占用,谷歌重新设计了Android的Java。以便能提高效率和减少资源占用,因而与J2ME等不同。其中Activity等同于J2ME的MIDlet,一个 Activity 类(Class)负责创建视窗(Windows),一个活动中的Activity就是在 foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行效果。如果运行中的 Activity 全部画面被其他 Activity 取代时,该 Activity 便被停止(Stopped),甚至被系统清除(Kill)。View等同于J2ME的Displayable,程序人员可以通过 View 类与“XML layout”档将UI放置在视窗上,Android 1.5的版本可以利用 View 打造出所谓的 Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC的Android Hero手机即含有大量的widget。至于ViewGroup 是各种layout 的基础抽象类(abstract class),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity 中,要通过findViewById()来从XML 中取得View,Android的View类的显示很大程度上是从XML中读取的。View 与事件(event)息息相关,两者之间通过Listener 结合在一起,每一个View都可以注册一个event listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有BitMap等同于J2ME的Image。 4.2 Symbian(塞班)平台Symbian系统是塞班公司为手机而设计的操作系统。2008年12月2日,塞班公司被诺基亚收购。2011年6月22日,诺基亚将塞班承包给埃森哲。2011年12月21日,诺基亚官方宣布放弃塞班(Symbian)品牌。由于对新兴技术支持欠佳,塞班的市场份额日益萎缩。截止至2012年2月,塞班系统的全球市场占有量仅为16.9%,中国市场占有率则降至18.7%,均被安卓超过。诺基亚宣布,2014年将彻底终止对塞班系统的所有支持。NOKIA塞班系统(sybian)上运行的软件大多数是用JAVA开发的(J2ME平台)。但本身系统程序是用C+语言编写的。塞班由于新技术的欠缺,注定在手机历史上昙花一现。 4.3 Windows phone/mobile/ios这三类平台已经初步奠定了未来手机的市场走势,手机将向更加智能化,更人性化,支持第三方软件化的发展趋势,就如电脑可以支持各种各样的第三方软件一样,这样的平台是今后手机智能化发展的必然趋势。5 Java语言在手机中的结合运用5.1 Java在手机游戏中的应用类Java这门语言,分三块:j2SE,j2EE,j2ME,其中j2ME是用来开发手机上的应用程序的;所以手机上的Java(J2ME)是Java应用的一个方向。虽然现今手机发展正向着智能化,更兼容化发展,尤其是支持第三方软件的平台给更多人以更多的便捷,开发平台也更多样化,但老版的手机应用程序依旧不可或缺java语言的编写。就拿手机中的游戏来说吧,一般手机游戏有三类:嵌入式游戏(Embedded games): 是内嵌在手机系统中自带的游戏。不久就过时了。如所有Nokia手机中自带的贪吃蛇游戏。SMS游戏(SMS games): 通过发送短信来玩的游戏。例如,SMS到游戏服务器加以处理后在通过SMS反馈结果。常见的形式有现场比赛和投票。这个游戏不是很受欢迎因为会增加费用,当每次SMS发送到游戏服务器的时候。浏览器游戏(Browser games):这些游戏是通过手机内置的microbrowser(移动设备的网络浏览器)来操作的,在联机或是脱机状态下进行。玩家可以在联网的状态下通过手机运营商的或是第三方游戏供应商的游戏网站来玩这些游戏,也可以下载下来在脱机的情况下玩。这一类包括很广的游戏范围,如单人或是多人游戏,网络游戏,脱机游戏,街机游戏等等。在这三类游戏当中,浏览器游戏是今天比较流行的手机游戏类型,因为它们有创新的丰富的多媒体内容,吸引人的表现形式,而且和SMS游戏相比费用也很低。本文主要是讨论浏览器游戏的开发,在本文中所提到的“手机游戏”都是指“浏览器游戏”。因为现在在市面上流通的大量手机的资源都非常有限(很小的屏幕,有限制的内存和显卡支持,繁琐的按键输入),所以这些设备最适合的也是商业上可行的游戏就是2D游戏了。但是,手机功能必然会随着时间的发展而增加,3D游戏在未来就会实现。当然,手机游戏也可以使用C+, Java(Java2 Micro Edition更准确)来开发,高通的平台Binary Runtime Environment for Wireless (BREW) platform。5.2为什么要选择Java语言作为手机游戏的开发虽然C+的优势在于用直接访问系统资源的方式编译到本地代码,并且以BREW平台提供端对端的解决方案给手机游戏开发者,同时允许他们用任何 设计语言(包括C+,Java,XML和Flas),Java是游戏开发最流行的选择。Java, 更准确的说是Java 2 Micro Edition (J2ME), 被定义为手机游戏开发最方便的语言。(关于J2ME,见What is Java 2 Micro Edition?)。J2MEs受欢迎程度的动力是:J2ME享有所有主要手机制造商支持的行业标准的地位,因为现今大多数手机都使用Java的功能。J2ME是一个自由开放式平台。这个可以降低开发成本并且提供提供了必要的灵活性使开发者能自由的使用它。它高度的便利性(Write once run anywhere)确保为一个手机品牌/类型写入的游戏应用程序都能工作于其他支持Java的手机品牌/类型。它特别适用于小的重量轻的设备而且非常安全,因为在它上面写入的应用程序不能访问或影响其他运行于手机/设备上的应用程序。J2ME由Mobile Information Device Profile (MIDP) API组成,它是为移动设备包括手机的应用程序开发而特别设计的,牢记它们的限制和约束。此外,最新的MIDP version 2.0致力于游戏开发的整个API,使游戏开发更简单快捷。MIDP2.0在游戏开发中的作用MIDP 2.0 API 是用于开发安全的,内容丰富的多媒体应用程序,包括移动设备游戏的一套功能加载的APIs。 MIDP 2.0是建立在它的前身MIDP 1.0基础上的,为创建有效率的快速的移动应用程序提供了更好的开发平台。关于MIDP2.0更多的信息,参见本文最后的Resources。MIDP2.0进一步完善了MIDP1.0的功能和特征。关于新的特征,参见Whats New in MIDP 2.0.。对MIDP最重要的补充是Game API,或是更准确的说是javax.microedition.lcdui.game API包。通过Game API, MIDP2.0为游戏开发者提供了从MIDP1.0从无到有的开发的基石。这些基石被创建和控制各种游戏要素如游戏画布,精神和层次等等分了类。因 此,MIDP2.0大大降低了游戏开发的时间。另外两个游戏开发必不可少的MIDP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论