JAVA贪吃蛇课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《Java应用开发》
课程设计报告
题目:JAVA小游戏- 贪吃蛇指导老师:
姓名:
专业:
班级:
日期:
目录
一、系统总体设计 (1)
(一)设计目标及完成功能 (1)
(二)系统结构设计 (1)
二、详细设计 (2)
(一)界面设计 (2)
(二)系统设计 (5)
(三)关键技术及算法 (6)
四、测试 (7)
五、安装使用说明 (7)
总结(体会) (8)
参考文献 (9)
一、系统总体设计
(一)设计目标及完成功能
本软件是针对贪吃蛇小游戏的JAVA程序,利用上、下、左、右方向键来改变蛇的运动方向,长按某个方向键后,蛇的运动速度会加快,在随机的地方产生食物,吃到食物就变成新的蛇体,碰到壁或自身则游戏结束,否则正常进行游戏,在到达固定的分数后,游戏速度会加快。
1.窗口功能说明:设计了三个窗口,分别是游戏主窗口,成绩窗口,游戏帮助和关于作者窗口。
2.菜单栏分别为:游戏菜单和帮助菜单
其中,游戏菜单包括开始游戏和退出游戏两项;帮助菜单包括游戏帮助和关于作者两项。
(二)系统结构设计
图1-1 系统结构图二、详细设计
(一) 界面设计
贪吃蛇游戏的基本运行界面
(1)生成初始界面:
图2-1 初始界面(2)游戏菜单栏:
图2-2 游戏菜单
(2)积分排行菜单栏:
图2-3 积分排行菜单
(3)进行游戏界面:
点击“游戏”,进入游戏菜单,选择“开始游戏”,或者使用快捷键“Ctrl+O”来开始游戏。红色为贪吃蛇的身体部分,黑色方块为食物。得
分后,分数和得到食物数在左上角处实时显示。
图2-4 进行游戏
(5)游戏结束界面:
当蛇撞到墙壁或者自身的时候游戏结束。
图2-5 游戏结束界面
(二) 系统设计
(三) 关键技术及算法
程序关键在于表示蛇的图形及蛇的移动。用一个小矩形快表示蛇的一节身体,身体每长一节,增加一个矩形块,蛇头用俩节表示。移动时必须从蛇头开始,所以蛇不能向相反的方向移动,如果不按任意键,蛇自行在当前方向上前移,但按下有效方向键后,蛇头朝着该方向移动,一步移动一节身体,所以按下有效方向键后,先确定蛇头的位置,而后蛇的身体随蛇头移动,图形的实现是从蛇头新位置开始画出蛇,这时,由于未清屏的原因,原来的蛇的位置和新蛇的位置差一个单位,所以看起来蛇多一节身体,所以将蛇的最后一节用背景色覆盖。食物的出现与消失也是画矩形块和覆盖矩形块。为了便于理解,定义两个结构体:食物与蛇。当到达一定分数后蛇的运动速度将加快。记分排行的功能是将得分最高的玩家信息储存,其余玩家的信息将被删除。得分和食物数将在窗口中实时显示。
四、测试
测试内容:本系统测试的主要内容为功能测试,界面测试。详细的说,是对游戏的开始新游戏、退出、查看最高成绩、计时、统计分数等功能进行测试,并测试程序的鼠标点击事件、菜单的响应及按键响应等事件。
测试结果:能正确实现功能要求。要求输出的效果与预期的输出效果完全一致。
五、安装使用说明
系统配置说明
设备:硬件最低要求:CPU Pentium以上PC服务器。
操纵系统:支持Windows XP以上的操作系统。
软件:JDK 1.5;JCreator 4.50 Pro
总结(体会)
回顾这个设计过程,我学到了许多书本上没有学到的知识。通过这次自己制作的软件,丰富了自己的实践技能,扩展了本专业的知识面,使我受益非浅,同时也体验到了搞软件开发的困难度。在这次设计的同时,我又从中学到了许多东西。但由于我对这样的软件开发还只是一个开始,了解的不多,这其中或许还有很多的不足,有些模块做得不是很好,界面的设计及整体的布局还比较简单,没有突出特色出来,这也可能是我这个系统的不足之处,在这里也恳请各位老师能够对我的作品指明不足并加以改正。
总之,在这一次的课程设计过程中,我查阅了大量的资料,对Java有了一点初步的认识,对于软件工程这些辅助性的教材也巩固了不少,为我这次的课设提供了很大的帮助,锻炼了我的能力让我掌握了一门新的程序设计语言:java 语言,系统地学习了数据库方面的知识,并更进一步提高了我在程序设计、调试