基于J2ME的手机五子棋游戏的设计.doc
《基于J2ME的手机五子棋游戏的设计.doc》由会员分享,可在线阅读,更多相关《基于J2ME的手机五子棋游戏的设计.doc(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、盐城工学院本科生毕业设计说明书(2010)毕业设计说明书基于J2ME的手机五子棋游戏的设计与实现专业计算机科学与技术学生姓名杨婷婷班级B计算机064学号指导教师王 榕完成日期2010年5月25日基于J2ME的手机五子棋游戏的设计与实现摘 要:J2ME(Java 2 Micro Edition)是近年来随着各种不同设备,尤其是移动通信设备的飞速发展而诞生的一项开发技术。它因其“write once,run anywhere”的Java特性而提高了开发的效率。随着手机性能的不断提高,手机休闲娱乐应用将成为PC休闲娱乐应用之后又一重要业务增长点。棋类游戏规则单一,比较适合在手机等便携终端推广。 由于
2、具有跨平台、易于移植、占用空间小的优势,J2ME成为移动应用开发平台的主流,并提供了很多用以支持移动应用软件的开发的API。现将该技术用于这次的手机游戏开发,可以实现游戏的快速开发,不但便于查看游戏运行过程中内存的占用量和程序的每一部分代码消耗了多少处理器时间,而且可以不断地优化代码,使代码具有高度的复用性、可扩展性、可维护性。游戏的开发以J2ME为平台,利用Java技术,结合J2ME的MIDP技术,并对于程序设计思想,重要类、方法等展开讨论。在对弈部分,分析设计走棋算法,选择合适的方式组织成代码,实现基本的人工智能。过程中使用了J2ME中的CLDC/MIDP软件体系,主要运用了MID Pro
3、file的特定类的支持,来完成游戏的开发。关键词:J2ME;CLDC;MIDPDesign and Implementation of Gobang Cell-phone Game Based on J2MEAbstract: J2ME is a kind of fast developing technology implemented on various devices especially mobile communication equipments. It improves the efficiency of the development process because of i
4、ts write once, run anywhere nature. The development trend of the entertainment market based on the cell phone is very obvious because the handset performance enhances unceasingly. The entertainment market based on the cell phone will to be the new important business growth point follow the PC entert
5、ainment market. As the rules of a single chess game, it is more suitable for mobile phones and other portable terminal extension. J2ME has been the preferred platform for development because of its platform independent and compatibility, and provides a lot of APIs to support the development of mobil
6、e application software. The technology for mobile game development, can achieve the rapid development of the game. It is not only easy to observe the memory consumption and processor consumed time during the operation of the game, but also can optimize the code, so that the code has a high degree of
7、 reusability, scalability, maintainability. The game has designed by J2ME, the Java technology and the MIDP technology. I studied the procedure thought, the important class and the method. In the playing chess part, I have analyzed the algorithm, choosed the appropriate way to organize the code and
8、realized the basic artificial intelligence. On the other hand, I learned software system of CLDC/MIDP and the specific class of the MID Profile to complete the game development. Key words: J2ME;CLDC;MIDP目 录1 概述11.1 课题研究背景11.2 课题研究意义22 开发技术背景22.1 JAVA语言概述22.2 J2ME简介32.3 J2ME的体系结构42.4 移动信息设备简表72.5 开发平
9、台83 系统分析及总体设计93.1 可行性分析93.2 需求分析93.3 系统概要设计104 系统详细设计134.1 界面设计134.2 走棋算法274.3 胜负判断295 系统测试305.1 测试方案305.2 测试结果306 结 束 语35参考文献36致 谢37附 录38附录1 程序清单38附录1.1 StartGame.java程序清单38附录1.2 Chesses.java程序清单39附录1.3 Chessboard.java程序清单44附录1.4 其它程序清单49基于J2ME的手机五子棋游戏的设计与实现1 概述 1.1 课题研究背景手机游戏的实现方式主要包括嵌入式游戏、浏览器游戏、短
10、消息服务游戏、J2ME和其它的解释语言。Java 2 Micro Edition是一种针对移动电话和PDA这样的小型设备的Java语言。J2ME与台式机中的Java相比还是有一定的限制,但是它已经极大的提高了移动电话支持游戏的能力。并且具备一定的优势:庞大的潜在用户群、便携性、开发门槛较低。手机是现代生活方式的产物,如同因特网的普及导致网络游戏的高速发展一样,手机的普及,对满足不同功能的手机软件的需求也就越来越迫切,这就需要比较好的手机软件开发平台,此时具有平台无关性优点的J2ME开发平台也就应运而生。J2ME是Sun公司为消费电子和嵌入式设备软件的需要而开发的应用程序接口和技术规范,J2ME
11、提供了由多家大型的移动设备厂商一起设计和提出的工业标准简表(简称MIDP)的开发接口,由于这个MIDP简表不是某个特定的商家所拥有的,所以具有一定的通用性,因此由J2ME开发的软件对多家大型移动设备厂商生产的支持MIDP简表的手机都适用,比如Nokia、Motorola和三星等多家手机厂商推出的多款支持J2ME的手机。与传统的主流的PC游戏相比,手机游戏的价值在于打发一些无聊的时间,作为一个移动的娱乐终端,手机游戏施展身手的机会永远可能是在地铁站、公交车或者是洗手间这些地方,也许在庞大的游戏行业里,手机游戏将永远扮演着一个边缘者的角色,因为谁也不能指望一个人在家的时候用手机玩游戏或者看电影。但
12、是手机游戏的市场是巨大的,即便是只有十分之一的用户来购买游戏,那也将是不可忽视的商业机遇。随着移动开发技术的不断升级和终端设备成本的下降,近年来,手机在普通消费人群中得到了极大的普及。凭借其便于携带、沟通迅捷、功能多样、私密性强等独有优势,手机已经成为普通民众不可替代的随身工具。其益智、趣味和休闲的特点迎合了消费者的娱乐需要,手机游戏的开发推广已经成为手机生产商和运营商重要的业务增长点,游戏软件产业价值不断提升。手机游戏是手机的一种高附加值操作软件,游戏编程是手机软件编程的重要组成,同时也持续推动手机软件技术升级进步。手机游戏按手机平台分类,主要有J2ME、Brew、UniJa等。其中J2ME
13、手机开发平台使用最为广泛。作为SUN公司针对微型嵌入式消费电子产品开发的编程系统,J2ME技术是当前手机软件开发的主流平台,各大手机生产厂商目前的主流产品绝大都使用J2ME技术。基于J2ME技术开发手机软件可以实现手机功能的多样化与专业化,极大的满足了人们对手机要求更高的需求。1.2 课题研究意义本设计基于J2ME技术,开发一款五子棋游戏软件,可以供人们闲暇时间随时随地娱乐,提高棋艺。同时五子棋游戏程序的开发实现这个课题,正好提供给我这样一个研究的机会,通过对人工智能中博弈方面的研究,实现简单的人机对弈设计。 通过对该课题的研究与实践,首先,进一步熟悉面向对象语言,加深对J2ME层次结构的了解
14、。通过NetBeans集成开发环境创建软件,最终形成一个具备基本功能的手机五子棋游戏,可应用于便携式设备,适合于棋类爱好者。其次,了解手机游戏开发的特点和现状。并且对人工智能中比较容易实现的人机博弈进行学习,更深刻地理解人工智能这门边缘学科的实用性。2 开发技术背景2.1 JAVA语言概述Java的出现是源于对独立于平台语言的需要,希望这种编程语言能编写出嵌入各种家用电器等设备的芯片上、且易于维护的程序。人们发现当时的编程语言都有一个共同的缺点,就是针对CPU芯片进行编译。这样,一旦电器设备更换了芯片就不能保证程序正确运行。九零年Sun公司成立了开发小组,开始致力于开发一种可移植的、跨平台的编
15、程语言,该语言能生成正确运行于各种操作系统、各种芯片上的代码。Java的出现标志着真正的分布式系统的到来。Java是一种跨平台的、面向对象的、分布式的、解释的、安全的、结构的、可移植的、性能很优异的多线程的动态语言。Java的特点: 平台无关性:平台无关性是指Java能运行于不同的平台。Java引进虚拟机原理,并运行于虚拟机,实现不同平台的Java接口之间。使用Java编写的程序能在世界范围内共享。Java的数据类型与机器无关,Java虚拟机(Java Virtual Machine)是建立在硬件和操作系统之上,实现Java二进制代码的解释执行功能,提供不同平台的接口的。 安全性:Java的编
16、程类似C+,学习过C+的读者将很快掌握Java的精髓。Java舍弃了C+的指针对存储器地址的直接操作,程序运行时,内存由操作系统分配,这样可以避免病毒通过指针侵入系统。Java对程序提供了安全管理器,防止程序的非法访问。面向对象:Java吸取了C+面向对象的概念,将数据封装于类中,利用类的优点,实现了程序的简洁性和便于维护性。类的封装性、继承性等有关对象的特性,使程序代码只需一次编译,然后通过上述特性反复利用。程序员只需把主要精力用在类和接口的设计和应用上。Java提供了众多的一般对象的类,通过继承即可使用父类的方法。在Java中,类的继承关系是单一的非多重的,一个子类只有一个父类,子类的父类
17、又有一个父类。Java提供的Object类及其子类的继承关系如同一棵倒立的树形,根类为Object类,Object类功能强大,经常会使用到它及其它派生的子类。分布式:Java建立在扩展TCP/IP网络平台上。库函数提供了用HTTP和FTP协议传送和接受信息的方法。这使得程序员使用网络上的文件和使用本机文件一样容易。 健壮性:Java致力于检查程序在编译和运行时的错误。类型检查帮助检查出许多开发早期出现的错误。Java自己操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能,这些功能特征大大提高了开发Java应用程序的周期。并且Java还提供了Null指针检测、数组边界检
18、测、异常出口、Byte code校验等功能。2.2 J2ME简介J2ME是SUN公司针对嵌入式、消费类电子产品推出的开发平台,与J2SE和J2EE共同组成Java技术的三个重要的分支。J2ME实际上是一系列规范的集合,由JCP组织制定相关的Java Specification Request(JSR)并发布,各个厂商会按照规范在自己的产品上进行实现,但是必须要通过TCK测试,这样确保兼容性。J2ME是JAVA的三大分支之一,专门用于开发基于消费性电子产品的应用。J2ME支持个人手持移动设备,如手机、PDA等。手机用户可以通过支持JAVA功能的终端,使用多种全新图形化、动态化和个性化的移动增值服
19、务。J2ME提高了移动电话支持游戏的能力,比SMS或WAP更容易控制和交互的界面,并且可以通过无线网络连接到远程的服务器。随着JAVA手机的普及,J2ME成为目前最流行的移动游戏开发环境。目前手机访问Internet只能访问WML网页,而不是主流的HTML网页,也不能显示复杂的图形格式,能提供的功能很有限,并且,因为现有的解决方案不够智能化,又不能访问本地存储区,如果进行在线交易会增加服务器负荷,使服务器的反应速度变慢,使无线Internet的应用受到了很大限制。J2ME的出现则使上述问题迎刃而解。因为J2ME是基于Java语言的,所以它天生就具有以下优点:A.动态内容传输新的应用、服务和内容
20、可以通过不同类型的网络动态下载。B.安全类文件校验、明确定义的应用程序编程接口和安全组件确保了第三方应用程序的行为是可靠的,不会对设备或者网络造成损害。C.交叉平台的兼容性标准化语言组件和库意味着由于支持配置和描述所带来的约束使应用和内容可以在不同设备之间灵活地传输。D.离线获取不用激活网络连接,应用就可以被使用。这种特点降低了传输费用,减轻了可能的网络故障带来的影响。E.一种功能强大的现代面向对象的编程语言Java相对于当前用于无线软件开发的编程语言和工具来说具有更加完善的抽象机制和更高级的程序构造,这使得应用开发更加有效。这些特性使第三方软件开发商可以很容易地介入应用程序的开发,并且可以很
21、方便地将应用程序安装到手机上,开发周期也大大缩短,而且还能支持应用程序的动态下载和升级。J2ME应用程序除了能够更好地完善手机上已有的应用外,还进一步增加了字典、 图书、游戏、定时提醒等新的应用,并能访问电子邮件、即时消息、股票和电子地图等信息。J2ME程序设计的几个原则:第一,使用面向对象编程。虽然使用面向过程编程可以减小文件的尺寸,但是为了以后维护的方便和利于扩展,还是要使用面向对象编程。第二,使用MVC模式。将模型、界面和控制分离。第三,自动存储用户设定使用RMS来存储用户的信息,这样不仅可以减少用户的输入,而且对用户友好。很多程序做了自动登陆等。第四,一些系统设置允许用户关闭。如背景音
22、乐、背景灯显示等。第五,将低级用户界面的绘制动作放在一个独立的线程里面去。第六,在需要大量时间才能完成的工作时,给用户一个等待界面。2.3 J2ME的体系结构Java 2技术是一系列产品的集合,Java 2技术体系结构如图2-1所示。图2-1 Java 2技术体系结构 其中,J2ME为运行在嵌入式消费类电子产品的设备,如移动电话、PDA、游戏终端之上的应用程序提供了一个健壮的、灵活的环境。与J2SE、J2EE和JavaCard一样,J2ME同样包含了一个小型的虚拟机和一系列的Java API。除此之外,J2ME还提供了灵活的图形用户界面、健壮的安全模型、广泛的联网协议支持。J2ME是一种通过许
23、多部件和规范的技术,这众多的部件和规范帮助J2ME来满足这众多的消费产品的不同的需要。和所有的爪哇程式语言技术一样,在它的核心属于一种虚拟机。就像使用所有Java技术一样,J2ME的核心也在一种虚拟机中。最初,用于J2ME应用程序虚拟机的被称作Kilobyte virtual machine或简称KVM。就像它名称的含义,KVM比较小,通常只有128K或更少。这比起通常了解和使用的Java 2标准版Java虚拟机(JVM)的32MB来说就小得多了。为了使J2ME程序广泛适用于各类嵌入式平台,J2ME采用了模块化的结构,底层是宿主机的操作系统,内部则分为三层:Java Virtual Machi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 J2ME 手机 五子棋 游戏 设计
限制150内