java技术在游戏开发的应用本科毕业论文.doc
《java技术在游戏开发的应用本科毕业论文.doc》由会员分享,可在线阅读,更多相关《java技术在游戏开发的应用本科毕业论文.doc(33页珍藏版)》请在三一文库上搜索。
1、本科毕业论文题 目 JAVA技术在游戏开发中的应用华中师范大学汉口分校学位论文原创性声明本人郑重声明:所呈交的学位论文是本人在导师指导下独立进行研究工作所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。本人完全意识到本声明的法律后果由本人承担。学位论文作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保障、使用学位论文的规定,同意学校保留并向有关学位论文管理部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权省级优秀学士学位论文评选机构将本学位论文的全部或部分内容编入有关数据库进行检索,可以
2、采用影印、缩印或扫描等复制手段保存和汇编本学位论文。本学位论文属于1、保密 ,在_年解密后适用本授权书。2、不保密 。(请在以上相应方框内打“”)学位论文作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日目录Java技术在游戏开发中的应用11. 绪论11.1问题的提出及研究意义11.2 Java技术在游戏开发中的应用分析11.3课题的主要研究内容22. 相关的理论、技术基础32.1 Java简介32.2 面向对象32.3 平台无关性42.4 可靠性和安全性52.5 多线程53 . Java技术在游戏开发中的应用73.1 Applet中的绘图技术73.2 游戏开发中的交互103.3 基
3、于AWT及SWING的游戏界面开发133.4 多线程技术的应用153.5 Java 2D技术的应用193.6 Java网络技术的应用223.7 人工智能244. 总结与展望25参考文献26致谢.2830内容摘要:J2ME是随着移动通信设备的飞速发展而诞生了一项新开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率。 随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的
4、作用。本文简单的介绍了Java技术在游戏开发中的应用,并以选取各个游戏中的实例对技术进行阐述。文章主要介绍了广泛应用于游戏开发中的一下技术:APPLET,Java IO流,多线程,事件处理,绘图,GUI的设计等。关 键 词:Java J2ME 游戏Abstract:J2ME is a mobile new technology,which birth with the rapid development communications equipment. Its position in consumer electronics applications, intelligent equipme
5、nt, diversification, provides a revolutionary solution, and because of its Write Once, run anywhere nature of Java to increase the efficiency of development. With the increasing popularity of mobile phones, Java function in the realization of mobile devices, Java applications mobile value-added serv
6、ices generated by the gradual manifestation of its influence, to enrich the content of peoples lives, providing easier access to information.This article describes a simple Java technology in the game development application, and to select examples of the various games on the technology on. The main
7、 article on the widely used in game development technology of click: APPLET, Java IO stream, multi-threaded, event handling, graphics, GUI design, etc.Key words:Java J2ME Game Development1 绪论1.1问题的提出及研究意义J2ME(Java 2 Micro Editio)是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应用上,对设备的智能化、多样化,提供了
8、革命性的解决方案,并因其“Write Once, run anywhere”的Java特性而提高开发的效率。 随着手机的日益普及、Java功能在移动设备上的实现,Java应用程序产生的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资讯起着不可忽视的作用。 而Java游戏在手机软件中占有很大的比例。Java游戏成为IT产业中增长最快的部分之一.纵观IT产业的历史,计算机游戏已经成为技术创新背后的动者,渴望更加强大的硬件计算能力,渴望不受不同的软件的限制。游戏开发者和玩家常常是前沿计算机技术的最早的采用者。随着技术对游戏经验的促进,游戏市场持续增长。计算机游戏和金钱,从而提高了我
9、们的工作水平,我们因此花费更多的时间和金钱在游戏上,来改善生活的整体质量。甚至在当今困难的经济时代,游戏仍保持快速增长,他仍然是盈利行业的组成部分。对Java游戏开发技术的研究,不仅可以促进Java移动开发的发展,而且可以创造出更多的游戏,为用户提供更多的娱乐和体验。1.2 Java技术在游戏开发中的应用分析Java技术自1995年问世以来,在我国的应用和开发也得到了迅速普及,总体来看,这些应用主要集中于企业应用开发。据有关单位调查显示,从开发领域的分布情况上看Web开发占了一半以上,为57.9%,JavaME移动或嵌入式应用占15%,C/S应用占11.7%,系统编程占15.4%。近30%的开
10、发者用Java从事C/S应用或系统级应用的开发。在桌面应用上,尽管Java在桌面GUI方面尚有不尽如人意之处,但仍然有很多开发者用来开发运行在多种操作系统平台上的桌面应用而Java在游戏开发上的应用有着很大的优势,凭借其“无平台相关性”,它可以实现“一处编写,多处运行“,占领了可移动设备游戏开发的重大比例;它的网络技术,为游戏开发中的网络连接也提供了技术保证;而随着Java 2D 、Java 3D技术的流行,游戏中的图形开发,为游戏提供了完美的画面;AWT,SWING技术则广泛应用与GUI的开发,为用户提供友好的界面;多线程技术则为游戏流畅的画面作出了贡献。Java的其他技术也深入的应用在游戏
11、开发中,在此不一一列举了。1.3课题的主要研究内容 Java技术面庞大复杂,应用广泛,深入各种领域。基于Java的游戏开发技术很多,不管是个人计算机、网络、还是移动设备,都可以看到Java游戏的存在。本论文着眼于Java技术在游戏开发中的应用,选取Java游戏开发最流行和重要的技术进行讨论,对广泛应用于Java游戏开发的绘图技术,IO技术,交互界面开发技术,多线程技术,Java2D技术,网络技术进行了介绍,并引用具体的实例进行分析。其多线程技术、Java 2D技术、网络技术为重点介绍的技术,其在Java游戏开发中占有很重要的地位,是游戏开发中不可或缺的一环。而对于人工智能技术,由于水平有限、篇
12、幅问题,在此只做简单的介绍。2 相关的理论、技术基础2.1 Java简介Java 是 Sun 公司推出的一种编程语言。它是一种通过解释方式来执行的语言,语法规则和 C+ 类似。同时, Java 也是一种跨平台的程序设计语言。用 Java 语言编写的程序叫做 “Applet” (小应用程序),用编译器将它编译成类文件后,将它存在 WWW 页面中,并在 HTML 档上作好相应标记,用户端只要装上 Java 的客户软件就可以在网上直接运行 “Applet” 。 Java 非常适合于企业网络和 Internet 环境,现在已成为 Internet 中最受欢迎、最有影响的编程语言之一。 Java 有许多
13、值得称道的优点,如简单、面向对象、分布式、解释性、可靠、安全、结构中立性、可移植性、高性能、多线程、动态性等。 Java 摈弃了 C+ 中各种弊大于利的功能和许多很少用到的功能。 Java 可以运行与任何微处理器,用 Java 开发的程序可以在网络上传输,并运行于任何客户机上。 Java的特点Java是一种跨平台,适合于分布式计算环境的面向对象编程语言。具体来说,它具有如下特性:简单性、面向对象、分布式、解释型、可靠、安全、平台无关、可移植、高性能、多线程、动态性等。2.2 面向对象面向对象其实是现实世界模型的自然延伸。现实世界中任何实体都可以看作是对象。对象之间通过消息相互作用。另外,现实世
14、界中任何实体都可归属于某类事物,任何对象都是某一类事物的实例。如果说传统的过程式编程语言是以过程为中心以算法为驱动的话,面向对象的编程语言则是以对象为中心以消息为驱动。用公式表示,过程式编程语言为:程序=算法+数据;面向对象编程语言为:程序=对象+消息。所有面向对象编程语言都支持三个概念:封装、多态性和继承,Java也不例外。现实世界中的对象均有属性和行为,映射到计算机程序上,属性则表示对象的数据,行为表示对象的方法(其作用是处理数据或同外界交互)。所谓封装,就是用一个自主式框架把对象的数据和方法联在一起形成一个整体。可以说,对象是支持封装的手段,是封装的基本单位。Java语言的封装性较强,因
15、为Java无全程变量,无主函数,在Java中绝大部分成员是对象,只有简单的数字类型、字符类型和布尔类型除外。而对于这些类型,Java也提供了相应的对象类型以便与其他对象交互操作。多态性就是多种表现形式,具体来说,可以用一个对外接口,多个内在实现方法表示。举一个例子,计算机中的堆栈可以存储各种格式的数据,包括整型,浮点或字符。不管存储的是何种数据,堆栈的算法实现是一样的。针对不同的数据类型,编程人员不必手工选择,只需使用统一接口名,系统可自动选择。运算符重载(operator overload)一直被认为是一种优秀的多态机制体现,但由于考虑到它会使程序变得难以理解,所以Java最后还是把它取消了
16、。继承是指一个对象直接使用另一对象的属性和方法。事实上,我们遇到的很多实体都有继承的含义。例如,若把汽车看成一个实体,它可以分成多个子实体,如:卡车、公共汽车等。这些子实体都具有汽车的特性,因此,汽车是它们的父亲,而这些子实体则是汽车的孩子。Java提供给用户一系列类(class),Java的类有层次结构,子类可以继承父类的属性和方法。与另外一些面向对象 编程语言不同,Java只支持单一继承。2.3 平台无关性Java是平台无关的语言是指用Java写的应用程序不用修改就可在不同的软硬件平台上运行。平台无关有两种:源代码级和目标代码级。C和C+具有一定程度的源代码级平台无关,表明用C或C+写的应
17、用程序不用修改只需重新编译就可以在不同平台上运行。Java主要靠Java虚拟机(JVM)在目标码级实现平台无关性。JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。但JVM通常是在软件上而不是在硬件上实现。(目前,SUN系统公司已经设计实现了Java芯片,主要使用在网络计算机NC上。另外,Java芯片的出现也会使Java更容易嵌入到家用电器中。)JVM是Java平台无关的基础,在JVM上,有一个Java解释器用来解释Java编译器编译后的程序。Java编程人员在编写完软件后,通过Java编译器将Java源程序编译为JVM的字节代码。任何一台机器只
18、要配备了Java解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的(过程如图1所示)。另外,Java采用的是基于IEEE标准的数据类型。通过JVM保证数据类型的一致性,也确保了Java的平台无关性。Java的平台无关性具有深远意义。首先,它使得编程人员所梦寐以求的事情(开发一次软件在任意平台上运行)变成事实,这将大大加快和促进软件产品的开发。其次Java的平台无关性正好迎合了网络计算机思想。如果大量常用的应用软件(如字处理软件等)都用Java重新编写,并且放在某个Internet服务器上,那么具有NC的用户将不需要占用大量空间安装软件,他们只需要一个Java解释器,每当需要使用某
19、种应用软件时,下载该软件的字节代码即可,运行结果也可以发回服务器。目前,已有数家公司开始使用这种新型的计算模式构筑自己的企业信息系统。2.4 可靠性和安全性Java最初设计目的是应用于电子类消费产品,因此要求较高的可靠性。Java虽然源于C+,但它消除了许多C+不可靠因素,可以防止许多编程错误。首先,Java是强类型的语言,要求显式的方法声明,这保证了编译器可以发现方法调用错误,保证程序更加可靠;其次,Java不支持指针,这杜绝了内存的非法访问;第三,Java的自动单元收集防止了内存丢失等动态内存分配导致的问题;第四,Java解释器运行时实施检查,可以发现数组和字符串访问的越界,最后,Java
20、提供了异常处理机制,程序员可以把一组错误代码放在一个地方,这样可以简化错误处理任务便于恢复。由于Java主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。Java通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。当Java字节码进入解释器时,首先必须经过字节码校验器的检查,然后,Java解释器将决定程序中类的内存布局,随后,类装载器负责把来自网络的类装载到单独的内存区域,避免应用程序之间相互干扰破坏。最后,客户端用户还可以限制从网络上装载的类只能访问某些文件系统。上述几种机制结合起来,使得Java成为安全的编程语言。2.
21、5 多线程线程是操作系统的一种新概念,它又被称作轻量进程,是比传统进程更小的可并发执行的单位。C和C+采用单线程体系结构,而Java却提供了多线程支持。Java在两方面支持多线程。一方面,Java环境本身就是多线程的。若干个系统线程运行负责必要的无用单元回收,系统维护等系统级操作;另一方面,Java语言内置多线程控制,可以大大简化多线程应用程序开发。Java提供了一个类Thread,由它负责启动运行,终止线程,并可检查线程状态。Java的线程还包括一组同步原语。这些原语负责对线程实行并发控制。利用Java的多线程编程接口,开发人员可以方便得写出支持多线程的应用程序,提高程序执行效率。必须注意地
22、是,Java的多线程支持在一定程度上受运行时支持平台的限制。例如,如果操作系统本身不支持多线程,Java的多线程特性可能就表现不出来。3 Java技术在游戏开发中的应用3.1 Applet中的绘图技术Applet程序中所采用的AWT的绘图机制主要涉及三个方法:paint()方法、update()方法和repaint()方法,update()方法和paint()方法都有一个Graphics类参数。Graphics是画图的关键,它可以支持两种绘图:一种是基本的绘图,如:画线、矩形、圆等;另一种是画图象,主要用于动画制作。 要进行绘图,首先要找到一个Graphics类的对象。update()方法和p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 技术 游戏 开发 应用 本科 毕业论文
链接地址:https://www.31doc.com/p-3902291.html