基于J2ME的手机游戏开发定稿.doc

【精品】java贪吃蛇游戏毕业设计(源代码+论文)

收藏

资源目录
跳过导航链接。
【精品】java贪吃蛇游戏毕业设计(源代码+论文).rar
JAVA贪吃蛇游戏毕业设计(源代码+论文)
基于J2ME的手机游戏开发定稿.doc---(点击预览)
贪食蛇
readme.txt---(点击预览)
src
Snake.java
SnakeGame.java
SnakeList.java
sankegame.db
snake.gif
Thumbs.db
运行游戏.jar
压缩包内文档预览:(预览前20页/共27页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:1638238    类型:共享资源    大小:105.59KB    格式:RAR    上传时间:2017-08-30 上传人:机****料 IP属地:河南
30
积分
关 键 词:
精品 java 贪吃 游戏 毕业设计 源代码 论文
资源描述:
【精品】java贪吃蛇游戏毕业设计(源代码+论文),精品,java,贪吃,游戏,毕业设计,源代码,论文
内容简介:
基于 手机游戏开发 摘要 :随着 通信技术的发展和手机的普及 ,手机游戏 的 开发 技术 越来越 为人们所关注。 以开发平台,利用 供强大工具,不但可以在手机上实现静态 术所无法实现的计算处理、数据存储、与服务器的通信等功能,而且能够开发各种手机游戏 。本文在介绍 其体系结构的基础上, 以贪吃蛇游戏为实例,描述 了借助 发 手机游戏 的过程 。 关键词: 手机游戏 ; 用程序 ; 永久性数据 on 2ME to 2 be to as of On of 2ME as a of of 2is in 录 第一章 绪论 . 1 究背景 . 1 究内容 . 1 第二章 其体系结构概述 . 2 2介 . 2 2系结构 . 2 动信息设备简表概述 . 3 目标硬件环境 . 3 用程序 . 3 中的类 . 3 2介 . 4 述 . 4 用程序 . 4 用定时器 . 5 网络 . 6 使用 . 7 用 . 8 久性数据( . 9 储集( . 10 记录 . 11 举 . 12 异常 . 13 户界面( . 13 I 基础 . 13 级 . 14 低级 . 15 第三章 手机游戏开发过程 . 16 吃蛇游戏的规则简介以及开发环境 . 16 吃蛇游戏的规则简介 . 16 发环境 . 16 详细设计 . 16 码设计 . 17 第四章 程序的调试与运行 . 22 戏的调试 . 22 戏的运行环境 . 23 第五章 总结 . 24 致 谢 . 25 参考文献 . 25 1 第一章 绪论 究背景 从 20 世纪 90 年代早期诞生以来,以其强大的功能迅速为广大程序员们所接受。 从 2001 年开始,日本的国内的移动电话开始搭载 用本 来就是一种程序语言 的 后,就可以在移动电话上完成以往静态的 容所无法达成的计算处理、数据存储、与服务器的通信等等。如果能利用 么就可以实现更多的功能。随着手机游戏的发展,国内外各大开发商纷纷运用 行手机游戏开发。 为一种基于 便携设备开发平台, 在各 大手机开发公司 得到了 广泛 应 用 。 究内容 本课 题拟研究基于 手机游戏开发 技术 以及其特点,具体研究内容如下: 1、手机游戏开发以及 基本理论和 库的使用; 2、 系结构的研究; 3、 动信息设备简表的研究; ( 1)、 目标硬件环境; ( 2)、 用程序; ( 3)、 中的类。 4、 研究; ( 1) 用程序的研究; ( 2) 类库研究; ( 3)各事件发生器的应用。 5、开发工具的应用和开发环境的设置。 其中 动 信息设备简表的研究和 研究为重点,本 课题将通过一个具体的手机游戏的开发来研究以上内容 。 2 第二章 其体系结构 概述 2介 现在 致可分为 类。 标准版,通常在 使用的 在 ,扩展了给企业使用 主要使用在服务器上的功能。而 目标是微小设备 ,这类设备有许多种类, 在 这些设备的 中,定义了 ,两个 以能用在个人网关 、 下一 代 移动电话 、 人数字助理) 、 家电设备 、 端 、 车辆导航系统等上运行为前提设计出来的。 以能使用在移动电话 、 人数字助理) 、 家电设备 、 端等上面为前提设计出来的。 2系结构 配 置和 简表:配置定义了一个设计在一 系列 类似硬件上运行的 台的能力 。 目标是家电与嵌入式设备,这类设备有很多种类,对应这些设备的 中,定义了 接设备配置) 和 限 接设备配置) 两个配置 , 配置所提供的类函数只有 等 核心类的子集。 与手机相关的,它实际是定义一个设备制造商用来实现 行环境的标准 , 第三方开发者只需要遵循这个标准。 要影响 发和软件发布的以下方面: 1)目标设备的特 性 ; 2)安全模型:安全模型有两个部分,虚拟机 和应用程序安全。虚拟机安全层的目的是保护下面的设备不受任何执行代码可能引起的损害 。 3 动信息设备简表 概述 目标硬件环境 1)显示 : 96*54 象素 , 1 位颜色 , 大约 1: 1 比例; 2)输入: (a)单手键盘或者小键盘; (b)双手的 盘; (c)触摸屏 。 3) 内存 : (a)128易失性内存,供 件使用; (b)8非易失性内存,供应用程序生成的永久数据使用 ; (c)32易失性内存,供 使用 。 4) 网络 : (a)双响无线网络,可间歇性连接; (b)通常是很有限的带宽 。 用程序 在 运 行的 序被称为 服从一些关于它运行环境和程序打包的一些规则。其运行环境是启动 这 是设备内置应用管理器的任务。应用程序能访问到下面的一些资源: ( 1) 震动文件中的所有文件。( 2) 叙文件的内容( 中的类 打包: 用一般采用震动文件的形式。这个文件应该包含运行应用程序需要的类和所 有的资源文件,它也应该包含一个叫 清单文件。保存在震动文件中的清单文件是一个简单的文本文件,包含属性值 。 应用程序描叙( 移动电话网络上传送大量的数据,需要有一个描叙文件让 用户 在没有下载整个包之前来查看一下 动的细节。 4 2介 述 含以下 五 个部分,如表 2示: 表 2 别 描 述 括 。 要包括 。 供访问设备通信能力的接口 。 过记录管理系统( 问 用户 永久存储 。 括 晶显示器用户界面)类 。 用程序 应用程序 , 用程序的核心是 。为了创建一个 须从这个虚基类派生出自己的类。表 2供了从 方法 。 表 2 方 法 描 述 访问 返回 与 对应的属性的值 。 应用程序管理器在应用程序关闭前,调用这个方法来给我们做一些事情的机会( 例 如保存状态和释放资源) 。 在用户暂停游戏时,应用程序管理器 调用 类 方法 。 应用程序管理器调用 这个方法 , 来告诉用户再次开启游戏 。 如果游戏者决定退出游戏 , 可以调用这个方法来通知应用程序管理器 。 5 续 表 2 方 法 描 述 调用这个方法来通知应用程序管理器游戏者已经暂停游戏 。 调用这个方法来告诉应用程序管理器 重新开始 。 应用程序管理器( 作用就是管理 本质上来说, 用程序只存在两种状态 暂停和运行。 创建后默认为暂停状态,当应用程序管理器认为它准备完毕,它会调用 法来通知 入运行状态。 用定时器 括两个关于定时器的类 (如表 2 2示 ): 表 2 方 法 描 述 构造一个新的 象 。 停止 d) 把一个 任务 定时在时间 d 运行 。 让一个任务第一次在一个指定 的时间运行,然后每隔 秒运行一次 。 指定一个任务在 秒后运行一次 。 指定一个任务从 秒连续运行,然后每隔 秒运行一次 。 指定一个 任务 从 续运行,然后以固定间隔 秒连续运行 。 指定一个 任务 在 秒后运行,然后以固定间隔 秒连续运行 。 6 表 2 方 法 描 述 构造一个新的 象 。 结束该任务 。 这个方法必须被一个包含 间执行的代码的方法重载 。 返回任务上一次执行的确 切 时间 。 我们可以通过不同 方法来确定什么时候执行任务,包括在一个指定的时间执行一次和那个时间后按照一个固定的时间 间 隔连续执行。也可以在一段延迟(单位是毫秒)后执行任务,还可以选择以固定的 时间 间隔连续执行。 网络 含对 的 ,即通用连接框架的支持, 范只是要区 分 必须实现 连接。如果想开发的是基于无线网络的高性能的多人联网游戏,这非常值得考虑应用。目前的情况是,无线网络的传输情况是高延迟以及高丢失率,所以响应时间在 50游戏很难实现。通用连接框架使用静态工厂类 创建和返回一个连接。如图 2示是所有类型的类层次图 。 7 图 2层次图 图 2用连接框架包含丰富的多功能的通信类;但是 确保支持 使用 用连接框架设计包括一个超级 概念,这个 为一个支持任何连接类型的工厂 , 基本上来说,调用 的静态方法 需要连接的资源的名字作为参数传递过去,这个名字应该采用 “协议: 地址: 参数 ”的格式。 在代码里将采用 ,如表 2示: 表 2 方 法 描 述 构造,打开和返回一个指向一个指定连接 。 8 续表 2 构造,打开和返回一个连接, 连接 一个指定资源 打开的模式都需要设定 。 构造,打开和返回一个连接,连接一个指定资源 打开的模式都需要设定,同时也有一个参数指定是否需要超时异常 。 打开一个连接,然后构造和返回一个数据输入流 。 打开一个连接,然后构造和返回一个数据输出流 。 打开一个连接,然后构造和返回一个输入流 。 打开一个连接,然后构造和返回一个输出流 。 用 是一个全功能的 户端,实用于大多数的网络任务(低延迟)。对于游戏而言,可以用它来按需下载内容(如新的关卡),更新得分,或者实现游戏者之间的通信。表 2所有 的可用方法。 表 2-6 方 法 描 述 获取头中的日期值 。 获取头中的过期时间 。 n) 根据索引获取头中的键名 。 n) 根据索引获取头中的键值 。 获取指定的头文字段的值 。 9 续表 2-6 按照长日期类型返回指定字段的值,如果该字段不存在就返回 值 。 按照整数类型返回指定字段的值,如果该字段不存在就返回 值 。 返回最后一次更 新的时间 。 返回 获取 的文件部分 。 获取 的主机部分 。 获取 的端口部分 。 获取 的协议部分 。 获取 的查询部分 。 获取 的引用部分 。 返回 应状态码 返回 应消息(如果存在的话) 。 获取连接请求的方法 。 设置 求的方法。可用的类型有 获取与指定的键相关联的请求属性值 。 设定与指定的键相关联的请求属性值 。 久性数据( 开发游戏时,保存数据在 是用 录管理系统)来实现的,可以在 中找到它,表 2是这个包中所有的类的列表。 用记录的方式来保存数据,然后使用唯一的记录号来应用这些数据 , 成组的数据 就 被保存在存储集中。 10 表 2(不包含异常) 类 描 述 类 许访问记 录存储集功能 。 接口 供一个用来实现两个记录间比较的接口 。 供记录存储集的枚举器;可以和比较器和过滤器联合使用 。 获取的数据进行过滤 。 供一个用来 “监听 ”发生的事件的接口,比如记录增加,修改和删除 。 储集( 记录存储集即一个记录存储的机制,表 2展示了完整的 表 2录存储 法 描 述 存储集访问方法 打开一个存储集或者在它不存在的时候创建一个存储集 。 关闭一个存储集 。 删除一个存储集 。 获取存储集最后被修改的时间 。 获取存储集的名称 。 返回存储集当前记录的数量 。 返回存储集使用的总字节数 。 获取空闲空间 。 获取存储集的版本号 。 11 续表 2录存储 获取 你可以访问的所有的记录存储集的字符串数组 。 记录访问方法 向存储集中加入一条新的记录 。 用 获取一条记录 。 把一条记录读取到 。 删除与 关的记录 。 使用新的字节数组与 关联的内容 。 在插入后获取下一个记录的 返回按字节计算的记录存储集当前的数据大小 。 返回一个 象。它是用来在一个记录集合中枚举的 (使用数) 。 与时间有关的方法 加入一个监听器对象,它可以在有这个记录存储集消息的时候被调用 。 移除原来用 法加入的监听器对象 。 记录存储集在与 范围,也就 是 说 同一个包的任何 可以访问这个包中的记录存储集, 其他 包中的 至不能感知到别的包里记录存储集的存在。 记录 一个记录就是一个字节数组 , 可以在里面写任何格式的数据。可以用 记 录 中 写 入 数 据 , 也可以用 在记录存储集中记录是以一种 类 表的结构存储,如下图 2示: 12 1 “2 “64997” 3 - _ 图 2A” 每一个记录和它相关的字节数组都有一个整数主键唯一来标识, 成为记录设定 一个写入的 1,每次增加一条记录它的 增加 1, 上图展示了一个记录集的简单用法。在这个 例 子中,玩家的名字(字符串 “存储在记录 1 中,记录 2 保存最高分,记录 3 是先前从网络上下载的缓存的 图象 。 举 持使用 来排序记录,如表2示了它所有 属于 这个类中的 全部 的方法。 表 2 方 法 描 述 常用方法 销毁枚举器 。 指出在下面的记录存储集改变后该枚举器是否自动更新生成 。 改变 状态 。 引起枚举器管理的索引重新生成 。 13 续表 2 把枚举器设置成刚刚创建后的状态 。 访问 测试在从前一个到最后一个的顺序中是否还有可以枚举的记录 。 测试在从最后一个到前一个的顺序中是否还有可以枚举的记录 。 获取存储集中的下一个记录 。 获取存储集中的前一个记录 。 获取前一天记录的 获取下一个记录的 获取记录的数量,这在你使用过滤器的时候是很重要的 。 可以用记录存储集来访问枚举器,也可以使用枚举器在记录中双向遍历。如果反向遍历只需要使用 异常 常都是因为不正确的环 境造成的,对于这些异常需要编写代码来处理问题( 情况),或者只能接受它。 户界面( 创建游戏时, 许我们使用两种截然不同的界面系统 高级 I。 I 基础 核心是 概念,它代表 的一个 任何一个 14 时间点,只能有一个 见。 在 有 3 种类型的 ( 1) 低级 以通过 访问 ; ( 2) I 组件,或者说控件 ; ( 3) 复杂组件( 级 级 供了 一个抽象接口,通过它可以获得大量的功能。使用高级 先创建组件把它们加入到屏幕,然后与它们相交互。高级 般划分为两大类:屏幕和组件。 ( 1) 屏幕( 一个完整类组件,它管理整个屏幕。 以在 ( 2) 列表( 一 个 可 以 给用 户 显示 一组 备选 项的 组 件。 这个 类实 现 口, 实现了这个接口。 ( 3) 文本框( 件是微型世界的字处理器,它只能输入多行的文字。它可以让玩家输入多行文字 、 剪切、复制以及从剪切板粘帖、过滤输入的数据。 ( 4) 警告( 可以使用它来显示一个提示信息(因为它是一个 以它接管整个屏幕)。 ( 5) 一种可以包含一个或者多个下面这些从 派生出来的组件的 ( 6) 运用 在 加入简单的文字消息。 15 低级 低级 供了一个工具包来移动和绘制图形、显示文字、获取直接的按键事件等。 ( 1) 称画布,是一个 象,所有绘图操作都画在它上面。 ( 2) 工具在 承担基本 的二维绘图。 ( 3) 二维绘图工具 用 4 个参数 直线起点的 x、 y 坐标值和直线终点 x、 y 的坐标值,例如: 50, 0, 100, 0); 这行代码会从位置( 50, 0)到( 100, 0)绘制一条直线。 绘制一个矩形是一个类似的过程,不同的只是需要用起点加上宽度和高度的方式来指定这个对象 , 可以绘制透明的或者填充的矩形,甚至可以绘制圆角的矩形。 4 个绘 制矩形 的方 法是: 弧是使用 6 个参数来绘制的,前 3 个参数是弧所在的整个圆的外切矩形。剩下的两个参数是 度数, 0 为右侧(在三点的位置)的地方, 180 是左侧(在九点的位置)的位置。 ( 4) 绘制文字 可以使用方法 ( 5) 图象和裁剪 裁剪让人可以把图象输出限制到显示设备的一个特定区域中,例如,如果将输出限制在一个从( 10, 10)开始到( 50, 50)的区域中,那么从那个时候起,没有图像会出现在显 示设备上这个区域之外的任何地方。 ( 6) 事件响应 实现一个或者多 个按键事 件响应方法 : 16 第 三 章 手机游戏开发过程 吃蛇游戏的规则简介 以及开发环境 吃蛇游戏的规则简介 在贪吃蛇游戏中,玩家操作由小方块连接而成的蛇,去吃随机散落在画面内的小方块,每吃一块就增加一小方块长度,要是撞壁以及撞自己的尾,就属于失败 , 如无失败则直到通关为止。 屏幕的长度 的 行向为 11 单位 ,纵向为 18 单位 。 在这个范围内,玩家 通过 操作方向键 来 控制蛇的运动方向。 该游戏的最大特色是屏幕自适应,无论各种 手机 ,屏幕大小如何,该游戏总是能获得最佳的显示效果。 发环境 ( 1)开发 的 硬件环境: 40G/56M/0X ( 2)开发软件: 详细设计 本游戏的操作流程 ( 如图 3:用户 在 启动 ,即进入游戏主画面,屏幕开始显示为欢迎画面。用户按 下 开始 按钮后,就可以开始玩游戏 。 当用户想暂停时,再次按一下 开始 按钮,游戏就暂停了,在暂停的情况下再按 开始 按钮,游戏继续运行。任何时候按 退出 按钮,游戏 会终止 。 17 图 3作流程 码设计 ( 1)游戏地图代码设计 游戏地图是蛇的活动范围和食物随机散落的范围,游戏的容器为行向为 11 单位 ,纵向为 18 单位 ,如下代码: 10; /地图的开始坐标 10; / 16; /图标的宽度 11; /地图的列数 18; /地图的行数 : 二维绘图工具 个参数 直线起点的 x、y 坐标值和直线终点 x、 y 的坐标值,例如: 50, 0, 100, 0); 这行代码会从位置( 50, 0)到( 100, 0)绘制一条直线。 绘制一个矩形是一个类似的过程,不同的只是需要用起点加上宽度和高度的方式来指定这个对象。可以绘制透明的或者填充的矩形,甚至可以绘制圆角的矩形。 4 个绘 制矩形 的方 法是: ( 2) 贪吃蛇和食物的代码设计 屏幕的长度为行向为 11 单位 ,纵向为 18 单位 ;在这个范围内(如图 玩家操作方向键控制蛇的运动方向。 该游戏的最大特色是屏幕 自适应,无论各种手机 ,屏幕大小如何,该游戏总是能获得最佳的显示效果。 图 3戏区域 贪吃蛇最初由 3 个小正方形组成,小正方形是蛇的身体和游戏容器的组成部分。食物也由一块小正方形组成,并且随机散落在游戏框图的区域内,每次只出现唯一 的 一个,待玩家操作游戏完成一个任务后面,再出现下个食物 , 小蛇每吃一个食物就增加一个长度。 实现代码如下: 19 ; = if() ; if( ; if(+ ; ; ,); 21 ( 3)操作控制代码设计 游戏设计,本质 上就是用一个 线程 或者定时器产生重绘事件 ,用线程和用户输入改变游戏状态。这个游戏也不例外,启动 ,就立即生成一个重绘线程,该线程每隔 50制一次屏幕。当然,重绘时有一些优化措施,并不是屏幕上所有的像素都需要重绘,而是有所选择,比如游戏画布上那些已经固定下来的就不需重绘。游戏画布是一个 以接受用户键盘命令,控制蛇的左移,右移,下移,上移。其代码如下: ; if(=&=) ; = i=0;ii+) i = i; 7: ; 8: ; 9: ; 0: ; 整个游戏的流程控制体现在游戏画布对象的 方法里。 根据当前的游戏状态,绘制出当时的游戏画面。欢迎画面和 面的绘 制相当简单 , 游戏暂停画面的绘制也相当容易,就是设立标志,让 执行的时候无需真正执行重绘动作。 22 第四章 程序的调试与运行 戏的调试 在手机游戏方面,游戏的控制和图片的设置是游戏的基本能力,为了方便玩家操作游戏,把 玩家 常用的操作键设为 游戏最常用的控制 键, 并通过 单有效的编码,使玩家可以重新设置自己的熟悉的键。本游
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:【精品】java贪吃蛇游戏毕业设计(源代码+论文)
链接地址:https://www.renrendoc.com/p-1638238.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!