扫雷游戏课程设计报告整合.doc

上传人:F****n 文档编号:101506053 上传时间:2019-09-28 格式:DOC 页数:38 大小:391KB
返回 下载 相关 举报
扫雷游戏课程设计报告整合.doc_第1页
第1页 / 共38页
扫雷游戏课程设计报告整合.doc_第2页
第2页 / 共38页
扫雷游戏课程设计报告整合.doc_第3页
第3页 / 共38页
扫雷游戏课程设计报告整合.doc_第4页
第4页 / 共38页
扫雷游戏课程设计报告整合.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《扫雷游戏课程设计报告整合.doc》由会员分享,可在线阅读,更多相关《扫雷游戏课程设计报告整合.doc(38页珍藏版)》请在金锄头文库上搜索。

1、 面向对象程序设计课程设计报告题 目: 扫雷游戏设计 院 (系): 计算机与电子系 专业班级: 计算机科学与技术0903班 学生姓名: = 学 号: = 指导教师: = 20 12 年 6 月 4 日至20 12 年 6 月 15 日华中科技大学武昌分校制 面向对象程序设计 课程设计任务书一、设计(调查报告/论文)题目扫雷游戏设计二、设计(调查报告/论文)主要内容内容:Windows系统提供的扫雷游戏是一个很有趣的游戏。这里使用Java语言编写一个与其类似的扫雷游戏。 基本功能与要求:1扫雷游戏分为初级,中级和高级三个级别,扫雷英雄榜存储每个级别的最好成绩,即挖出全部的地雷且用时最少者。游戏菜

2、单可以选择“初级”,“中级”和“高级”或“查看英雄榜”。2选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击雷区中的任何一个方块启动计时器。3用户要揭开某个方块,可单击它。若所揭方块下有雷,用户便输了这一局,若所揭方块下无雷,则显示数字,该数字代表方块周围的八个方块中共有多少颗雷。4如果用户认为某个方块下埋有地雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。用户每标记出一个扫雷标记(无论用户标记是否正确),程序将显示剩余雷数减少一个。5. 扫雷胜利后(用时最少者),程序弹出保存成绩对话框。三、原始资料1.面向对象程序设计课程设计指导书2. 耿祥义JAVA大学实

3、用教程北京:清华大学出版社,2009四、要求的设计(调查/论文)成果1.课程设计报告2.课程设计软件五、进程安排布置任务,查找资料、需求分析1天总体设计1天详细设计1.5天编制源程序实现3.5天测试与修改1天撰写课设报告2天六、主要参考资料1 张广彬. Java课程设计案例精编(第二版).北京:清华大学出版社, 2011. 2 耿祥义. Java课程设计(第二版).北京:清华大学出版社, 2008.3 耿祥义JAVA大学实用教程北京:清华大学出版社,20094 邹林达陈国君 Java2程序设计基础北京:清华大学出版社,20105 邹林达Java2程序设计基础实验指导北京:清华大学,2010指导

4、教师(签名): 20 年 月 日目 录1需求与总体设计11.1需求分析11.2总体设计12详细设计42.1 MineGame类42.2 MineArea类52.3 Block类62.4 BlockView类72.5 LayMines类82.6 Record类82.7 ShowRecord类92.8 userDifine类93编码实现113.1 MineGame类113.2 MineArea类143.3 Block类173.4 BlockView类183.5 LayMines类193.6 Record类203.7 ShowRecord类213.8 userDifine类244系统测试26总结30

5、工厂搬迁对于一个企业来说,安全问题始终是第一位的,也是最基本的,过程中所涉及到的安全问题主要是人员的安全和设备拆装以及财产的安全。各部门经理和所有员工一定要以安全为核心,开展各项工作,职责到人、分工明确。1需求与总体设计1.1需求分析1.11扫雷游戏概述扫雷是一种具有迷惑性的对记忆和推理能力的简单测试,它是长久以来最受欢迎的 Windows 游戏之一。游戏目标:找出空方块,同时避免触雷。1.1.2扫雷的操作方法游戏主区域由很多个方格组成。使用鼠标随机点击一个方格,方格即被打开并显示出方格中的数字;方格中数字则表示其周围的8个方格隐藏了几颗雷;如果点开的格子为空白格,即其周围有0颗雷,则其周围格

6、子自动打开。例如,方格中出现1,说明上下左右及斜角合计有一颗雷,依次类推,2则有2颗,3则有3颗。1.1.3游戏具有的功能I.能够显示主菜单和界面游戏需要提供主菜单让玩家进行游戏设置,同时能够显示当前剩余的地雷数量及当前花费时间等相关信息到界面上。II.能够接收鼠标输入功能能够接收玩家的鼠标输入功能,左键和右键输入。III. 能够根据规则翻转相应的格子翻动指定位置的格子。IV. 能够标示指定格子的功能即能够对确定或者怀疑是地雷的格子进行旗子和?符号的标示。V.游戏胜负判断功能当玩家单击的格子中有地雷时,判定玩家失败,游戏结束。当扫雷游戏中全部格子被打开时,判定玩家成功。VI英雄榜记录更新当有玩

7、家把当前等级的地雷全部扫出来后,并且时间比记录中的时间短时,在结束游戏时,要求玩家把名字保存下来。游戏初始时时间为999秒。例如,当第一个玩家把全部地雷扫出来的时间为120秒,这时玩家的记录时间将被保存下来并作为记录时间线。直到有玩家的时间少于120秒,才能更新当前记录时间线并保存玩家的名字。1.2总体设计在设计扫雷游戏时,需要编写8个Java源文件:MineGame.java、MineArea.java、Block.java、BlockView.java、userDefine.java、LayMines.java、Record.java和ShowRecord.java.扫雷游戏除了需要编写上

8、述8个Java源文件所给出的类外,还需要Java系统提供的一些重要的类,例如File、JButton和JLabel等类。扫雷游戏所用到的一些重要的类以及之间的组合关系如图1-1所示,系统功能图如图1-2所示。Block图1-1 类之间的组合关系MineGameFileShowRecordMineAreaRecordBlockViewLayMinesJButtonJLabeluserDefine帮助图1-2 功能图扫雷游戏主界面重新开始关于扫雷游戏低级中级高级英雄榜开始退出自定义1.2.1 MineGame.java(主类)MineGame类负责创建扫雷游戏主窗口,该文件含有main方法。扫雷游

9、戏从该类开始执行。1.2.2 MineArea.javaMineArea类创建的对象是MineArea类最重要的成员之一,代表“扫雷区域”。1.2.3 Block.javaBlock类是雷区中“方块”的类封装,含有关于“方块”的属性以及操作,即负责为雷区创建代表“方块”的Block对象。1.2.4 BlockView.javaBlockView是JPanel容器的子类,BlockView创建的对象负责为Block对象提供视图,以方便用户通过该视图与Block对象交互。1.2.5 LayMines.javaLayMine类对象不需要视图,在游戏中不需要看见该类。LayMine对象使用随机算法指定

10、MineArea对象中的哪些Block对象是雷,哪些Block对象不是雷。1.2.6 Record.javaRecord类是JDialog对话框的子类,对用户扫雷成功时,Record对象负责保存用户的成绩到文件。1.2.7 ShowRecord.javaShowRecord类是JDialog对话框的子类,当用户查看扫雷的最好成绩时,ShowRecord对象负责提供读取文件数据的界面。1.2.8 userDefine 类userDefine 类是JDialog对话框的子类,当用户想自定义扫雷难度时,ShowRecord对象负责设置用户想要的难度设置。2详细设计2.1 MineGame类MineG

11、ame类是javax.swing包中JFrame的一个子类,并实现了ActionListener接口。标明该类的只要成员变量和方法的UML图如图2-1所示。JFrameActionListenerMineGamebar: JMenuBar;fileMenu, heipMenu: JMenu开始,初级,中级,高级,英雄榜,自定义,退出,关于:JMenuItemmineArea: MineArea英雄榜: FileshowHeroRecord: ShowRecordMineGame(): 无类型actionPerformed(ActionEvent)main(String): void图2-1 M

12、ineGame类的UML图以下是UML图中有关数据和方法的详细说明。1) 成员变量a. bar和fileMenu提供菜单操作,单击游戏菜单项为“开始”、“初级”、“中级”、“高级”、“扫雷英雄榜”、“自定义”和“退出”。单击帮助菜单项为“关于”。b. mineArea是扫雷区域,提供有关扫雷的主要功能。c. “英雄榜”负责存放三个级别的扫雷最好成绩。d. showHeroRecord负责显示英雄榜中的数据。2) 方法A MineGame()是构造方法,负责完成窗口的初始化。B ActionPerformed(ActionEven)方法是MineGame类实现的ActionListener接口中的方法,该方法负责执行菜单发出的有关命令。用户选择菜单中的菜单项可触发ActionEvent事件,导致actionPerformed(ActionEvent)方法执行相应的操作,例如将mineArea创建的雷区设置为初级、中级、高级。C main(String)方法是程序运行的入口方法。2.2 MineA

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号