logo资料库

java小程序贪吃蛇实验报告,含有代码。.doc

第1页 / 共39页
第2页 / 共39页
第3页 / 共39页
第4页 / 共39页
第5页 / 共39页
第6页 / 共39页
第7页 / 共39页
第8页 / 共39页
资料共39页,剩余部分请下载后查看
一、概要设计
二、 程序整体设计说明
2.1、程序运行图
2.2、系统流程图
2.3、UML图
2.3、程序中所用类说明
三、源代码及注释
四、调试及错误总结
五、设计心得
六、参考文献
Java 课程设计 重庆邮电大学 Java 程序设计报告书 题 目 __简单贪吃蛇游戏_ 专 业 名 称 _计算机 班 级 _ 学 生 学 号 __ 学 生 姓 名 __ 指 导 教 师 __ __ 1
Java 课程设计 目 录 一、 概要设计....................................................................................................................................... 3 二、 程序整体设计说明...................................................................................................................... 4 2.1、程序运行图 ...........................................................................................................................4 2.2、程序中所用类说明............................................................................................................12 2.3、类图------------------------------------------------------------------------------------------------------------ 三、部分源代码及注释......................................................................................................................13 3.1、程序界面............................................................................................错误!未定义书签。 3.2、按键监听及计算 ............................................................................... 错误!未定义书签。 四、调试及错误总结.......................................................................................................................... 38 五、设计心得.......................................................................................................................................38 六、参考文献.......................................................................................................................................39 2
Java 课程设计 一、 概要设计 本程序是针对贪吃蛇小游戏的 JAVA 程序,利用方向键来 改变蛇的运行方向,空格键暂停或继续游戏,并在随机的地 方产生食物,吃到食物就变成新的蛇体,碰到壁或自身则游 戏结束,否则正常运行。 本系统共包括 1 个 java 源文件和 7 个类文件。 1. 类之间的关系如图 1 所示: SnakeGame SnakeFrame Snake Node SnakePanel StatusRunnable SnakeRunnable 2.简要算法分析: a.利用数组列表来存放蛇身的每一个节点。 b,蛇的方向分别用四个整型常量表示:1 上,2 下,3 左,4 右。 可利用 derection % c. 是否等于 newDer % 2 来判断改 变的方向是否一原来方向相反。 d,蛇吃食物算法:根据蛇头的方向,判断蛇头坐标与食物 坐标关系,例如:蛇头向上,则蛇头与食物的 x 坐标相同, 3
Java 课程设计 蛇头 y 坐标比食物 y 坐标少 10(一个食物或一节蛇身的长 度)。 e,蛇移动时,根据当前蛇头坐标向蛇头方向前画一个节点 作为新的蛇头,并去掉蛇尾。 二、 程序整体设计说明 2.1、程序运行图 游戏开始界面: 游戏运行界面: 4
Java 课程设计 游戏结束界面: 5
Java 课程设计 2.2、系统流程图 6
Java 课程设计 开始 New Game 启动游戏线程 判断蛇头方向 Move 启动游戏状态检测 线程 记录游戏状态 Repaint 是否吃到食物 否 游戏是否结束 结束游戏状态线程 物 是 蛇身+1 Repaint() 否 是否发生碰撞 是 1.主类 SnakeGame 游戏结束 (1)主类为此程序的入口,定义了 SnakeFrame 的对象 7
Java 课程设计 frame,开始运行此程序。 (2)源代码见文件 SnakeGame.Java 2.类 SnakeFrame (1)成员变量见表 2 表 2 主要成员变量 成 员 变 量 描述 变量类型 名称 状态标签 Private JLabel 分数标签 Private JLabel 蛇面板 private JPanel 速度标签 private JLabel 蛇类对象 private Snake 菜单条 private JMenuBar bar 游戏菜单 JMenu 帮助菜单 JMenu 速度菜单 JMenu 新菜单项 JMenuItem statusLabel scoreLabel snakePanel speedLabel snake gameMenu helpMenu speedMenu newItem 暂 停 菜 单 项 关 于 菜 单 项 JMenuItem pauseItem JMenuItem aboutItem 慢菜单项 JMenuItem slowItem 8
分享到:
收藏