J2ME 手机游戏——SuDoKu数独 毕业论文.doc
《J2ME 手机游戏——SuDoKu数独 毕业论文.doc》由会员分享,可在线阅读,更多相关《J2ME 手机游戏——SuDoKu数独 毕业论文.doc(34页珍藏版)》请在三一文库上搜索。
1、J2MEJ2ME 手机游戏手机游戏SuDoKu 数独数独 目目 录录 1. 引言引言.5 2. 绪论绪论.5 2.1 手机软件现状 6 2.2 手机游戏应具有的特征 6 2.3 本游戏背景介绍 7 3. 开发环境及相关技术的介绍开发环境及相关技术的介绍.7 3.1 开发环境.7 3.2 J2ME 简介7 3.3 MIDLET SUITES简介 8 3.4 MIDP 类库8 3.5. WTK2.5 简介.10 4. 数独游戏的策划和设计数独游戏的策划和设计.11 4.1.生成数独题目的方法.11 4.2 数独题目的变换 13 4.3.谜题数据的制作.13 4.4.利用回溯法求解数独.14 4.5
2、.游戏的类结构.15 4.6.用户界面流程.16 5. 主要模块设计主要模块设计.18 5.1.主类 SUDOKUMIDLET类.18 5.1.1.闪屏界面.18 5.1.2.游戏菜单列表.19 5.1.3. 继续游戏选项.19 5.1.4.填充完成后提示界面.20 5.2.游戏闪屏.21 5.2.1.加载闪屏图片.21 5.2.2.绘制闪屏屏幕.21 5.2.3.闪屏的线程.22 5.2.4.闪屏的取消.22 5.3 游戏菜单 MENULIST类23 5.3.1.MenuList 类得构造函数 23 5.3.2.游戏当前状态.23 5.3.3.菜单事件处理.24 5.4.游戏画布 SUDOK
3、UCANVAS类的实现.25 5.4.1. SuDoKuCanvas 类的构造函数.25 5.4.2.设置游戏参数.26 5.4.3.填充数字.26 5.4.4.游戏线程.27 5.4.5.键盘处理和绘制屏幕.27 5.4.6.显示答案.28 5.4.7.软键事件响应.28 5.5.游戏控制的实现.28 5.5.1.游戏难度和输入方式.29 5.5.2.谜题的产生.29 5.5.3.保存加载和开始新游戏.32 5.6.数独逻辑 SUDOKULOGIC类32 5.6.1.填充和清空宫格.33 5.6.2.检测填充结果.33 5.7.总结.35 参考文献:参考文献:36 英文摘要:英文摘要:36
4、致谢:致谢:37 英文摘要:英文摘要: Abstract: J2ME is a kind of fast developing technology implemented on various devices especially mobile communication equipments. It focuses on application for consumptive electronic products, providing revolutionary solution to the intelligentization and diversification of the e
5、quipment. It improve the efficiency of the development process thanks to its “Write Once, run anywhere” nature. When mobile phone is getting ever more popular nowadays, with the implementation of Java technology on mobile equipment, increment of capital on communication service exhibits its force on
6、 peoples everyday life, providing them ever fast information just in hand. Mobile phone whose capability is greater is more and more mature for game. This dissertation focuses on implementation of J2ME technology and has developed a commercial game suite run on mobile phones sudoku. This article in
7、introduced that J2ME in correlation techniques foundation, designed and has realized of Soduku game. Keywords: J2ME; mobile game;java; sudoku J2MEJ2ME 手机游戏手机游戏SuDoKuSuDoKu 数独数独 摘要:摘要:J2ME(Java 2 Micro Edition) 是近年来随着各种不同设备,尤其是移动通 信设备的飞速发展而诞生的一项新的开发技术。它定位在消费性电子产品的应 用上,对设备的智能化、多样化,提供了革命性的解决方案,并因其“Writ
8、e Once, run anywhere”的 Java 特性而提高开发的效率。 随着手机的日益普及、Java 功能在移动设备上的实现,Java 应用程序产生 的手机增值服务逐渐体现出其影响力,对丰富人们的生活内容、提供快捷的资 讯起着不可忽视的作用。特别是手机性能的逐渐增强,手机作为一个游戏平台 越来越成熟了。本论文着眼于 J2ME 技术的应用,开发一款可用的手机游戏程 序数独。 本文在介绍 J2ME 的相关技术的基础上,设计并实现了数独游戏。 关键字:关键字:J2ME、手机游戏、Java 、数独 1. 引言引言 虽然 J2ME 以开发交互式业务为主,属于战略性产品,备受产业连的重视, 但是由
9、于自从 NOKIA 的贪食蛇掀起手机游戏风潮之后,现在已经很难再想像 一部时尚的手机里头没有游戏。随着手机从单色屏到灰度屏到彩屏,从蜂鸣器 到扬声器,随着手机存储能力的加大和处理能力的加强,手机已经成为合情合 理的游戏平台,越来越多的手机厂商和专业的游戏公司开始关注手机游戏这个 潜在的市场。基于 J2ME 的通用解决方案,这种方案不仅仅可以提供高质量的 游戏,而且可以提供全方位的软件服务。正是由于无线业务的蓬勃发展,和越 来越多的无线厂商支持 J2ME 技术,J2ME 也将拥有一个更广阔的发展空间。 在这样的背景下,本文分析了数独游戏的基本原理和关键技术,利用 WTK 实现了数独游戏的部分模块
10、。 2. 绪论绪论 2.1 手机软件现状手机软件现状 在信息社会中,手机及其他无线设备越来越多的走进普通百姓的工作和生 活,随着信息网络化的不断进展,手机及其他无线设备上网络势在必行。但是 传统手机存在以下弊端: 1. 传统手机出厂时均由硬件厂商固化程序,程序不能增加、删除,有了 错误也不能更新、修改,若要增加新功能必须另换一部手机。 2. 传统手机访问互联网是通过 WAP(Wireless Application Protocal),所有 网络资源必须接通网络才能在线访问,非常耗时、费用亦很高。 而 Java 技术在无线应用方面的优势非常明显: 1. 应用程序可按需下载,而不是购买由硬件商提
11、供的套件,可升级空间 大。 2. Java 技术提供了一个类库,它使的应用开发商可以创建更为直觉、丰 富的用户界面(GUI). 3. Java 技术使网络带宽的应用更为有效,因为应用程序可以下载到器件 上,并在本地运行,仅仅是在连接到服务器时才会占用网络带宽。 基于以上分析,Java 手机将是未来手机的发展方向,是业界的热点。 2.2 手机游戏应具有的特征手机游戏应具有的特征 一个手机游戏应该具有以下特征: 易于学习: 既然手机游戏面向的是普通消费者而不是计算机专家,那么他 们不可能深入的学习游戏技巧,消费者不会花几个小时去研究一个 3 元的手动操 作的游戏.保持游戏的简单是最基本的要求。 可
12、中断性: 多任务处理是手机生活方式的基本特征。手机用户常常在任务 (如等一个电子邮件或者等车)之间有一小段时间。而游戏、日历管理、通讯 和工作数据访问使用的是同一个设备。所以一个好的手机游戏应该提供短时间 的娱乐功能,并且允许用户在游戏和工作模式之间顺利切换。 基于订阅:手机游戏的盈利成功取决于他们巨大的使用量,一开始开发和设 计每个游戏都是昂贵的,如果一个手机游戏开发者要赢利的话,重要的是:同一 个游戏引擎,多个标题,基本的故事情节类似。基于订阅的游戏是不断产生收 入的最好方法。 丰富的社会交互: 不管一个游戏设计得多好,只要玩家找到了它的根本模 式或者玩完了所有的游戏路径很快就会厌烦这个游
13、戏。对于一个基于订阅的游 戏,重要的是与别的玩家合作以增强所玩游戏的智力和随机性。在今天纷繁复 杂的多玩家游戏中具有丰富社会交互的游戏证明是成功的。 利用手机技术的优点: 巨额的手机技术研发费用都花在提高设备和网络的 可用性和可靠性上面。因此,手机设备硬件和网络协议与桌面/控制台世界(如 全球定位系统(GPS)扩展、条形码扫描仪、和短消息服务(SMS)/多媒体信息服务 (MMS)通讯)有着非常大的差别。好的手机游戏应该利用那些更新的设备特征 和网络基础设备的优点。 2.3 本游戏背景介绍本游戏背景介绍 相传数独源起于拉丁方阵(Latin Square),1970 年代在美国发展,改名为 数字拼
14、图(Number Place),之后流传至日本并发扬光大,以数字智力游戏智力 拼图游戏发表。在 1984 年一本游戏杂志通信正式把它命名为 数独,意思是“在每一格只有一个数字”。拼图是九宫格(即 3 格宽3 格高) 的正方形状,每一格又细分为一个九宫格。在每一个小九宫格中,分别填上 1 至 9 的数字,让整个大九宫格每一列、每一行的数字都不重复。 数独的玩法逻 辑简单,数字排列方式千变万化,不少教育者认为数独是锻炼脑筋的好方法。 3. 开发环境及相关技术的介绍开发环境及相关技术的介绍 3.1 开发环境开发环境 操作系统:Microsoft Windows XP 程序语言:Java 2 开 发
15、包:Java(TM) 2 Standard Edition (5.0) Sun Micro. J2ME Wireless Tool Kit 2.5.2 3.2 J2ME 简介简介 Sun 公司将 J2ME 定义为“一种以广泛的消费性产品为目标,高度优化的 java 运行时环境”。J2ME 是为了那些使用有限能源,有限网络连接(正常是无 线连接),以及有限图形用户界面的设备而开发的。 J2ME 不只是一个单独的技术规范,而是一系列技术规范的总称。这些规 范定义了 java 技术在资源限制的设备中的表现形式,而且新规范的不断制定当 中,并且这些规范的制定是完全向公众开放的。目前所说的手机游戏其实是
16、其 中规范的一种,即 MIDP(移动信息设备规范),该规范应用最为普遍,因此 习惯上也被人们笼统地称之为 J2ME 技术。 J2ME 主要应用于手机等小型嵌入式设备,这些设备由不同的厂商设计生 产,功用千差万别。J2ME 在应用于这些设备的同时也保留了 java 的传统特性, 即任何时间和任何地点的代码有可移植性,部署灵活性,安全的网络传输性, 以及代码稳定性。 3.3 MIDlet Suites 简介简介 在制定 MIDP 规范过程中,最重要的一件事情就是定义一个 MIDP 应用程 序的组成。换句话说,它应当回答任何开发人员都可能问的问题,比如,如何 将程序正确下载到设备中?程序的入口在哪?
17、设备如何识别该 MIDP 应用程序 是自己想要的? 同 Applet 类似,一个 MIDP 程序被称为“MIDlet”,MIDlet 应用的主类需 要从一个特殊的类(javax.microedition.midlet.MIDlet)中继承,并提供共用的默 认的构造函数。一个或多个 MIDlet 打包在一起叫做 MIDlet Suite,其表现形式 一个以“.jar”为后缀名的文件,这个 JAR 文件非常重要,它所包含的主要信息 如下: 包含 MIDlet 运行所需要的所有类,与 Applet 不同,MIDlet 不运行在运行 时下载其他类,而只运行在同一个 MIDlet 中的类。 JAR 的
18、Mainfest 是文本文件,用于描述 JAR 文件的内容,定义了在 MIDlet 中的重要信息,如名称,主类,图标等。 其他资源文件,如使用的图像,声音文件。 和 Java Applet 类似,MIDlet 应用程序在移动设备上运行时具有应用程序生 命周期,显而易见,MIDlet 可能处于以下 3 种状态:暂停,激活和终止状态。 各种状态之间的转换规则如图 2-1 所示。 3.4 MIDP 类库类库 MIDP 类库建立在 CLDC 类库基础之上, 因此许多类库都来自 J2SE。为了实现特定功能, MIDP 增加了一些新的类库,这些类库描述如 表 2-1 所示。 核心类库类库描述 java.i
19、o通过数据流提供系统的输入/输出 java.langMIDP 语言包,在 CLDC 中 java.lang 包的基础 上增加了类(来自 J2SE) java.lang.IllegalStateException。当有非法的转换请求 时抛出这个异常,比如,在一个 TimerTask 安排中调 用或者在用户界面组件容器中请求时 java.utilMIDP 工具栏,在 CLDC 中 java.util 包的基础之 上增加了以下类(来自 J2SE): java.util.Timer java.util.TimerTask Timer 用于安排一个后台线程使它在以后执行, TimeTask 通过使用 T
20、imer 安排一个单次执行的任务, 或者以一定间隔重复执行的任务 应用程序生命周期 javax.micorediton.mi dlet Midlet 包定义了 MIDP 应用程序,以及应用程序 和它所运行于环境之间的交互 用户界面 Javax.microedition.lc dui javax.microedition.lc dui.game 为 MIDP 应用程序提供用户界面 APE 为 MIDP 应用程序提供游戏开发的高级 API(MIDP2.0 新增) 持久存储 javax.mircroedition.r ms 这个包用来为 MIDlet 提供持久存储的机制,应 用程序可以存储数据,在以
21、后需要的时候获取这些数 据 网络 javax.mircroedition.i o MIDP 提供了基于 CLDC 通用连接框架的网络支 持,在 CLDC 这个包的基础之上,增加了类 javax.microedition.io.HttpConnection,这个类用于建 立 HTTP 连接 在 MIDP2.0 中除了支持 HTTP 连接外,还支持 HTTPS,报文,Socket 通信及串口通信。另外, MIDP2.0 还支持服务器 Push 体系架构 公开密钥 javax.microedition.p ki 提供用于鉴别安全网络信息的数字认证 (MIDP2.0 新增) 声音媒体 Javax.mi
22、croedition.m edia javax.microedition.m edia.control 该包为 MIDP 应用程序提供音,视频等多媒体功 能,该包遵循 JSR-135 规范(MIDP 2.0 新增) 该包为播放器提供了一些特定的控制功能 (MIDP2.0 新增) 表 21 MIDP 中的类库描述 3.5. WTK2.5 简介简介 WTK(Wireless Tool Kit)是 Sun 公司针对 J2ME 推出的用于手机和 Palm 等 移动设备的开发包,是除手机厂商的专用开发包外唯一的手机模拟器开发包。 它通用性高,开发出的应用程序可保证能运行在大部分设备上,而不像专用厂 商具
23、有一定的不兼容性。虽然它没有强大的功能和完善的调试手段,但它提供 运行模拟器的最基本组件,是其他 IDE 需集成采用的必备元素。 J2ME WTK 包含了为能够支持 MIDP 设备开发应用程序所需要的全部工具。 这些工具包含字节码与校验器(byte-code preverifier),KToolbar,自带的模拟器, 以及其他一些用来优化代码和监视程序的工具。 在安装 WTK2.5 以前,需要安装 JDK 5 (1.5)或者更高版本,安装完成 需要添加环境变量: JAVA_HOME: C:Program FilesJavajdk1.5.0_04 classpath: .;%JAVA_HOME%
24、libdt.jar;%JAVA_HOME%libtools.jar; %JAVA_HOME%libhtmlconverter.jar 在原来的 path 变量前添加 %JAVA_HOME%bin; WTK2.5 新建的项目会产生源程序,资源和类库文件,其结构组成如表 2-2 所示。 目 录描 述 src包含所有源程序文件 res包含所有的资源文件,如图片,声音,3D 数据文 件 bin包含 JAR,JAD 和未打包的 Manifest(创建项目自 动生成) lib包含外部类库文件(JAR 或者 ZIP 文件) tmplib存放临时外部类库(临时目录,编译后生成) cmpclasses使用 JD
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- J2ME 手机游戏SuDoKu数独 毕业论文 手机 游戏 SuDoKu
链接地址:https://www.31doc.com/p-4508259.html