当前位置:
文档之家› Java贪吃蛇游戏设计课程设计
Java贪吃蛇游戏设计课程设计
第 13 页 共 21 页
华东交通大学理工学院课程设计报告
import javax.swing.JMenuBar;//菜单栏 import javax.swing.JMenuItem;//菜单选项 import javax.swing.JOptionPane;//选择窗口 import javax.swing.KeyStroke;//按键 public class SnakeGame extends JFrame implements ActionListener, KeyListener,Runnable { //public void run()方法主要用来完成游戏主体运行流 程控制功能 public void run(){
戏恢复
图 2-1 游戏处理流程 图
第 9 页 共 21 页
华东交通大学理工学院课程设计报告
第四章 设计结果及代码 游戏界面,程序运行完,点击游戏,开始游戏,利用方向键 来控制游戏:
游戏开始界面,点击它里面的开始游戏则进行游戏,点击退 出游戏则退出:
第 10 页 共 21 页
华东交通大学理工学院课程设计报告
第 4 页 共 21 页
华东交通大学理工学院课程设计报告
第一章 课程设计内容及要求
内 容 :贪 吃 蛇 游 戏 设 计 与 实 现 ,主 要 分 为 以 下 二 个 模 块 :游 戏 主 界 面 模 块 游 戏 控 制 模 块 。在 此 只 实 现 游 戏 的 游 戏 主 界 面 模 块 、游 戏 控 制 模 块 。并 且 只 是 实 现 开 始 、退 出 、选 择 游 戏 难 度 等 功 能 。给 出 1 条 小 蛇 和 随 机 出 1 个 食 物 当 小 蛇吃到食物时就加分。 要 求 : a) 对 系 统 进 行 功 能 模 块 分 析 、 控 制 模 块分析正确,符合课题要求,实现相应功能; 可以加以其他功能或修饰,使程序更加完善、 合理 b) 系 统 设 计 要 实 用 ,编 程 简 练 、规 范 ,可 用 , 功能全面 c) 说 明 书 、 流 程 图 要 清 楚 , 有 解 决 问 题 办 法 总结 d) 要 求 上 机 调 试 通 过 e) 设 计 上 交 内 容 : 设 计 报 告 , 源 程 序 文 件 , 可执行文件
第 5 页 共 21 页
华东交通大学理工学院课程设计报告
第二章 课程设计目的和意义
目 的 : a) 复 习 、 巩 固 Java 语 言 的 基 础 知 识 , 进 一 步 加 深 对 Java 语 言 的 理 解 和 掌 握 b ) 掌 握 j a v a 程 序 设 计 的 思 想 、流 程 ,企 业 要求代码规范性及在项目中的应用 c) 加 强 理 论 知 识 和 实 际 应 用 的 结 合 应 用 , 锻 炼 学 生 的 分 析 解 决 实 际 问 题 的 能 力 。提 高 学生适应实际,实践编程的能力 d) 培 养 学 生 在 项 目 开 发 中 团 队 合 作 精 神 , 表达沟通、创新意识能力 e) 提 高 学 生 的 科 技 论 文 写 作 能 力 。 f ) 游 戏 形 状 ( 方 块 ) 需 求 ,良 好 的 方 块 形 状 设 计 ,绘 制 小 蛇 和 食 物 ,小 蛇 由 几 个 方 块 组 成 , 食物由 1 个方块组成 意 义 : 本 次 程 序 设 计 在 于 学 习 Java 程 序 设 计 基 本 技 术 ,学 习 用 J B u i l d e r 开 发 J a v a 程 序 的 相 关 技 术 ,熟 悉 游 戏“ 贪 吃 蛇 ”的 需 求 , 熟 悉 项 目 开 发 的 完 整 过 程 。学 会 怎 样 进 行 一 个 项 目 的 需 求 分 析 、概 要 设 计 、详 细 设 计 等
第 14 页 共 21 页
华东交通大学理工学院课程设计报告
toolkit=getToolkit(); youXiMenu = new JMenu("游戏"); kaiShiYouXi = new JMenuItem("开始游戏"); exitItem = new JMenuItem("退出游戏"); nanDuMenu = new JMenu("困难程度"); cJianDan = new JCheckBoxMenuItem("简单"); cPuTong = new JCheckBoxMenuItem("普通"); cKunNan = new JCheckBoxMenuItem("困难"); fenShuMenu = new JMenu("积分排行"); fenShuItem = new JMenuItem("最高记录"); guanYuMenu = new JMenu("关于"); zuoZheItem = new JMenuItem("关于作者"); ……… if(growth==0) {
第 6 页 共 21 页
华东交通大学理工学院课程设计报告
软 件 开 发 过 程 , 熟 练 地 掌 握 Java 程 序 设 计 的 基 本 技 术 和 方 法 , 熟 练 地 掌 握 JBuilder 环 境 的 使 用 方 法 ,培 养 起 初 步 的 项 目 分 析 能 力 和 程 序 设 计 能 力 。本 次 课 程 设 计 题 目 还 主 要 应 用 到 JAVA 面 向 对 象 程 序 设 计 语 言 中 Swing 组 件 和 GUI(图 形 用 户 界 面 )当 中 的 一 些 知 识 , 当 然 也 用 到 JAVA 中 大 部 分 基 础 知 识 , 如 JAVA 的 基 本 控 制 结 构 、 数 组 、 输 入 与输出等等 。
使程序更加完善、合理 b) 系统设计要实用,编程简练、规
范,可用,功能全面 c) 说明书、流程图要清楚,有解决问
题办法总结 d) 要求上机调试通过 e) 设计上交内容:设计
报告,源程序文件,可执行文件
华东交通大学理工学院课程设计报告
学生签名: 2012 年 12 月 27 日
课程设计(论文)评阅意见
起至 2012 年 12 月 27 日止。
三、课程设计(论文)的内容要求:
内容:贪吃蛇游戏设计与实现,主要分为以下二个模块:游
戏主界面模块游戏控制模块。在此只实现游戏的游戏主界面
模块、游戏控制模块。并且只是实现开始、暂停、退出等功
能。
要求:a) 对系统进行功能模块分析、控制模块分析正确,
符合课题要求,实现相应功能;可以加以其他功能或修饰,
time=500; for(i=0;i<=length-1;i++) { m[i]=90-i*10;n[i]=60; } 创建游戏的菜单以及按钮,其内容为开始和退出游戏, 困难程度,最高积分,关于。 public SnakeGame() { setVisible(true); menuBar = new JMenuBar();
评阅人 职称 教师
序号
项目
1 课程设计态度评价 2 出勤情况评价 3 任务难度评价 4 工作量饱满评价 5 任务难度评价 6 设计中创新性评价 7 论文书写规范化评价 8 综合应用能力评价
综合评定等级
2012 年 12 月 27 日
优秀
等
级
良好 中等 及格
不及格
第 3 页 共 21 页
华东交通大学理工学院课程设计报告
目录
第 1 章 课程设计内容及要求..........................................5 第 2 章 课程设计目的和意义..........................................6 第 3 章 设计思路及处理流程.........................................8 第 4 章 设计结果及代码................................................10 第 5 章 程序设计心得...................................................18 第 6 章 参考文献..........................................................20
第 8 页 共 21 页
华东交通大学理工学院课程设计报告
进入游戏画面
单击“开始游戏”按钮, 游戏开始,蛇开始随机。
键盘操作: 左移 右移 向下 向上
没有吃到 食物且蛇 碰到边界
游戏中途欲 中断,稍后 继续游戏
单击“重新开 始游戏”
单击“Space 或 P 暂停游戏”
游戏暂停
再次单击开始 游戏按钮,游
存档资料
成绩:
华东交通大学理工学院
课程设计报告书
所属课程名称 题目 分院 专业班级 学号 指导教师
JAVA 课程设计 贪吃蛇游戏设计
华东交通大学理工学院
课 程 设 计( 论 文 )任 务 书
专业
班级
姓名
一、课程设计(论文)题目 贪吃蛇游戏设计
二、课程设计(论文)工作:自 2012 年 12 月 17 日
第 12 页 共 21 页
华东交通大学理工学院课程设计报告
package SnakeGame; import java.awt.Color; //导入相应的文件,不导入则会报 错 import java.awt.Graphics;//图形,图形处理 import java.awt.Toolkit;//成套工具 import java.awt.event.ActionEvent; //导入相应的类,指 示发生了组件定义的动作的语义事件,事件源:由它们来引导 相应事件的发生 import java.awt.event.ActionListener;// 用于接收操作 事件的侦听器接口 import java.awt.event.InputEvent;// 导入 java.awt.event 包里面的 InputEvent 类,就可以用 InputEvent 里面的函数了 import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.JCheckBoxMenuItem;//把 javax 包 里面的 swing 包里面的“。。。”引进来 import javax.swing.JFrame;//框架 import javax.swing.JMenu;