java程序设计(迷宫及扫雷)
- 格式:doc
- 大小:575.00 KB
- 文档页数:16
面向对象的程序设计
课程设计报告
课程名称Java与面向对象的程序设计
实验学期 2010 年至 2011 年第二学期
所在学院理学院年级 09 专业班级信息与技术科学3班
学生姓名罗航宇学号 200930760320 自评成绩 100 教师评成绩
学生姓名何思健学号 200930760309 自评成绩 95 教师评成绩
指导教师梁茹冰
《Java与面向对象的程序设计》课程设计报告
目录
1 课程设计内容概述 (4)
2 程序设计的基本思想 (4)
3 系统流程图 (4)
4 UML类图 (8)
5 容器层次结构树 (9)
6 运行结果及分析 (12)
7 总结 (15)
8 合作课程设计的成员分工情况 (15)
9 参考文献 (16)
1 课程设计内容概述
1.1 设计目的:
设计一个迷宫游戏和一个扫雷游戏。
实现图形版的穿越迷宫问题。
每次随机生成迷宫,系统先计算好路径,允许玩家通过键盘上的方向键在迷宫中移动,在穿越过程中,通过对话框或其他界面提示给予玩家一定的帮助,直到成功到达迷宫出口。
实现随机生成雷区,点击界面会显示周围有多少个雷,可以双击右键,点击空白区域时会实现成片开挖功能。
选择扫雷则会随机生成雷区,当然玩家是看不到雷区的,只有通过点击界面,插旗来获取胜利。
在扫雷中,允许用户选择扫雷的难度,也可以自己设置方格的数量以及雷的数量。
1.2 设计任务:
将迷宫游戏和扫雷游戏整合在一起,通过一个界面进行调用。
2 程序设计的基本思想
2.1 问题需求分析:
迷宫和扫雷都是经典的小游戏,它们虽然比不上现在游戏的华丽,但它们的可玩性是毋庸置疑的。
2.2 总体设计:
首先设计一个界面,让玩家可以选择自己想玩的游戏。
选择迷宫则会随机生成一个迷宫图,用户可以控制老鼠让它从起点开始找到食物(键盘控制),或者点击老鼠的初始位置既可以进入自动演示阶段,老鼠会自己通过穷竭法来找到食物。
2.3 编程环境及工具说明:
编程环境是jdk,win7。
运行工具是JCreator Pro.
3 系统流程图
3.1 主界面流程图
3.2扫雷生成算法流程图:
4 UML类图
5 容器层次结构树5.1 allMain:
5.2 maze:
5.3 Auto:
5.4 mimeMain:
5.5 chose
6 运行结果及分析
6.1 主界面:
分析:这主界面是供用户选择游戏的,选择一个游戏再按确定按钮就可以玩了
6.2 扫雷界面:
中级难度扫雷界面
选择难度
扫雷菜单
扫雷分析:该扫雷模仿windows操作系统的扫雷游戏。
6.3 迷宫界面
迷宫键盘操作界面
自动演示界面
迷宫分析:进入第一个迷宫界面,通过键盘控制小老鼠,让小老鼠从迷宫中找到它的食物。
点击小老鼠的初始位置就可以进入自动演示界面。
自动演示界面中点击中上放的按钮可以让老鼠停止或者开始运动,直到老鼠自己找到食物为止。
7 总结
心得体会:
此次课程设计本来选择的是迷宫,我和伙伴做完迷宫后,自己觉得还有很多空余时间。
所以就写了个扫雷游戏
主要原因是因为个人对于游戏的喜爱。
这是自己做出的第一个小游戏,虽然该程序还很简陋而且可玩性不够,但每一个代码都是自己打出来的。
在整个编程过程中遇到的困难不少,对于初学者来说还算是个挑战。
在界面处理上,参考了很多JAVA动画制作的书。
在迷宫生成算法上出现了瓶颈,从网上看到一个关于用深度优先搜索算法生成迷宫的文章。
文章里的迷宫和我自己做的很一样,但是也使得我对深度优先算法的理解加深。
然后自己画图验证,在经过很多次尝试后成功生成。
深深感受到数据结构里面的很多算法及结构,对我们得编程用处是很大的。
从刚开始对该课程设计的构想一步一步完成其功能的过程中,学到的知识,对于知识的认识和掌握有很大的作用。
刚开始觉得这是种不可思议的,完成后才觉得这是我们学习必须经历的过程。
8 合作课程设计的成员分工情况
罗航宇负责扫雷游戏和迷宫生成算法。
何思健负责界面美化和迷宫寻找路径算法。
9 参考文献
1.<<JAVA图形与动画编程实例>> 清华大学出版社,李敏编著。
2.《Java数据结构和算法》中国电力出版社【美】Robert Lafore 编著。