java课程设计贪吃蛇
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JAVA设计贪吃蛇游戏
1.课程设计目的
《JA V A程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的程序设计专题实际是计算机相关专业学生学习完《JAVA程序设计》课程后,进行的一次全面的综合训练,JA V A程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。
2.设计方案论证
2.1设计思路
贪吃蛇游戏设计与实现,主要分为以下二个模块:游戏主界面模块和游戏控制模块。在此只实现游戏的游戏主界面模块、游戏控制模块。并且只是实现移动速度、暂停、重新开始等功能。
游戏主界面模块:
游戏的主界面是进入游戏后,能够给玩家第一感官的部分,主要包括游戏图形区域界面、游戏的速度选择更新界面、新生方块的预览、游戏速度控制按钮、暂停游戏按钮、重新开始游戏按钮以及游戏排行榜按钮。从很大程度上决定了玩家对游戏的兴趣问题,因此,游戏的主界面应该力求美观,爽心悦目。
游戏控制模块:
这个模块是游戏的中心环节,主要完成控制游戏的速度、暂停、重新开始等功能。为了能够给玩家一个很好的游戏环境,这部分应该做到易懂、易操作。
本设计所开发的是基于Java的一个贪吃蛇游戏软件,主要实现游戏的速度控制、游戏的暂停、游戏的退出等功能,分为: 游戏主界面模块、游戏控制模块以二个模块。
性能:
本软件在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。
2.2概要设计
2.3.1自定义类说明
类名:Exception
作用:用来处理当蛇撞到墙或自己的身体时程序的运行
继承的父类:GreedSnake类
实现的接口:没有
2.3详细设计
2.3.1程序概述
本程序是一个利用Java应用软件制作的贪食蛇小游戏。
在游戏过程中,用户通过点击小键盘区的方向键来控制蛇的运行方向;通过Pageup和pagedown键来控制蛇的移动速度,每单击一次,蛇的移动速度改变一次,改变频率为0.75。游戏运行过程中,如果想暂停,只需要按Space或P键即可。重新开始游戏的按键为Enter、S或R。当蛇没有吃到食物且碰到墙壁或自己的身体时游戏结束。
本程序的另一个功能是在程序运行窗口的左上角显示,用户在游戏过程中所得的分数,不过缺点是无法保存分数。
2.4.2程序流程图
本次游戏设计的处理流程如图1所示。
2.3.3 总设计模块的划分
根据游戏需求中游戏所要实现的功能,整个游戏分为二个模块进行具体的设计,如图2所示。
单击“Enter 、S 或R ”按钮, 游戏开始,蛇开始随机。
键盘操作:
向上
左移 右移 向下 没有吃到食物且蛇碰到边界 单击“确定” 游戏结束 游戏中途欲中断,稍后继续游戏
单击“Space 或P 暂停游戏”
进入游戏画面
再次单击开始Enter 、S 或R 按钮,游戏恢复
图1 游戏处理流程图
游戏控制模块的主要框架如图3所示。
游戏移动速度功能控制:点击“PageUp, PageDown ”按钮,蛇的移动速度就会改变,每点击一次,速度的改变频率为0.75。
游戏暂停控制:点击“Space 或P 暂停游戏”按钮,游戏暂停;再单击,游戏继续。
游戏重新开始控制:点击“Enter 、S 或R ”键后,系统图重新载入,即游戏重新
贪吃蛇游戏
游戏主界面模块
游戏控制模块
图2 游戏总设计模块
游戏控制模块
游戏的移动速度功能
游
戏的暂停功能
游戏的重新开始
图3游戏控制模块框架
开始。
2.3.4类、方法、属性说明
(1)成员变量
表1 主要成员变量(属性)
成员变量描述变量类型名称
文件菜单中子菜
单“新建”
JMenuItem mFile_New
编辑菜单中子菜
单“撤消”
JMenuItem mEdit_Undo
格式菜单中子菜
单“颜色”
JMenu formatMenu_Color
帮助菜单中子菜
单“帮助主题”
MenuItem mHelp_HelpTopics
(2)方法
表2 主要方法
方法名功能备注
Notepad4() 描述记事本无
Text.setBackground(Color.w
hite) 设置编辑区默
认背景色
无
Text.setForeground(Color.bl
ack) 设置编辑区默
认前景色
无
3.设计结果与分析
本程序在运行后,能够正常的相应按键事件。由于程序的主要部分已经集成为一个对象SnakeModel,所以利用键盘就可以实现操作。蛇前行的过程中,可以任意向其左或右方向改变方向,但按其前进方向和前进的反方向都没有反应。点击PageUp, PageDown键后,蛇的移动速度会根据点击的次数而改变。每点击一次,速度的改变频率为0.75。点击Space或P键后游戏就暂停了。点击Enter 或R或S键后系统则重新载入,即游戏重新开始。运行结果如下图4所示:
图4 程序运行图