- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大连交通大学软件学院 java 扫雷课程设计
Java课程设计报告
题 目 扫雷游戏
所在院系 软件学院
学生姓名 专 业
班 级 学 号
年 月 日
第一章 总体设计
1.1本系统的主要功能
显示剩余雷数、扫雷用时、分菜鸟、入门和高手三个级别难度、还有右键插旗。
1.2系统包含的类及类之间的关系
本系统共包括7个java源文件。
如图1-1所示。
图1-1 类之间的关系
2.2 java源文件及其功能
1.MG.java
MG类负责创建主窗口,该文件含有main方法,扫雷游戏从该类开始执行。
2.MA.java
Ma类创建的对象是MG类最重要的成员之一,代表‘扫雷区域’。
3.B.java
B类是雷区中‘方块’的类封装,含有关于‘方块’的属性以及操作,即负责为雷区创建代表‘方块’的Block对象。
4.V.java
BV创建的对象负责为Block对象提供视图,以便用户通过该视图与Block对象交互。
5.LM.java
LM类对象不需要视图,在游戏中不需要看见该对象。
6.R.java
当用户扫雷成功时,Record对象负责保存用户的成绩到文件。
7.SR.java
当用户查看扫雷的最好成绩时,SR对象负责提供读取文件数据的界面。
第二章 详细设计
2.1主类MG
(1)成员变量见表2-1
表2-1 主要成员变量(属性) 成员变量描述 变量类型 名称 Bar和fileMenu提供菜单操作,单击游戏菜单中的选项为“菜鸟级”、“门级”和“高手级”或“扫雷英雄榜” Bar和feleMenu Bar和fileMenu mineArea是扫雷区域,提供有关扫雷的主要功能 mineArea mineArea “英雄榜”负责存放三个级别的扫雷最好成绩 showHeroRecord负责显示英雄榜中的数据 showHeroRecord showHeroRecord (2)方法见表2-2
表2-2 主要方法 成员变量描述 功能 备注 MineGame() 负责完成窗口的初始化 actionPerformed(ActionEvent) 负责执行菜单发出的有关命令 Main(String[]) 程序运行的入口方法 (3)源代码见文件MG.java
2.2类MA
(1)成员变量见表2-3
表2-3 主要成员变量 成员变量描述 变量类型 名称 Block是block类型的数组,用来确定雷区有多少需进行扫雷的方块 block block Lay是LM类型的对象,负责设置block数组中的哪些方块是雷或不是雷 lay lay Time是计时器对象,负责计算用户的用时 time time (2)方法见表2-4
表2-4 主要方法 方法名 功能 备注 actionPerformed(ActionEvent) 当用户单击blockView中的某个方块时,该方法负责执行有关算法 initMineArea(int,int,int,int) 可根据参数提供的数据设置雷取的宽度、高度、雷的数目以及雷区的级别 (3)源代码见文件MA.java
2.3类B
(1)成员变量见表2-5
表2-3 主要成员变量 成员变量描述 变量类型 名称 Name是方块上的名字 name name aroundMineNumber是方块周围雷的树木 aroundMineNumber aroundMineNumber mineIcon是方块上雷的图标 mineIcon mineIcon isMine是用来表示方块是否有雷 isMine isMine isMark用来表示方块是否被标记 isMark isMark isOpen用来表示方块是否被挖开 isOpen isOpen
(2)方法见表2-6
表2-4 主要方法 方法名 功能 备注 setAroundMineNumber(int) 用来设置aroundMineNumber的值 getAroundMineNumber() 用来获取aroundMineNumber的值 (3)源代码见文件B.java
2.4类BV
(1)成员变量见表2-7
表2-3 主要成员变量 成员变量描述 变量类型 名称 blockNameOrIcon用来显示Block对象的name,number和mineIcon属性 blockNameOrIcon blockNameOrIcon blockCover用来遮挡blockNam
您可能关注的文档
最近下载
- 《科学探究:欧姆定律》名师课件.ppt VIP
- 网络服务业网络安全保障与应急响应机制建设方案.doc VIP
- 2025年高中《通用技术》考试卷(含答案) .pdf VIP
- 堰水力计算水利工程.xls VIP
- 人教版(2024新版)七年级上册生物期末复习知识点背诵提纲.docx VIP
- 2025 全国青少年信息素养大赛 Python 编程挑战赛(个人赛)初中组决赛模拟试卷(一).docx VIP
- 一种推送滚轮.pdf VIP
- EPC项目:基于风险管控的质量体系构建与实施.docx VIP
- 4洗涤剂总活性物的测定.pdf VIP
- 沙库巴曲缬沙坦联合松龄血脉康胶囊治疗老年高血压病合并慢性心力衰竭的.pptx VIP
文档评论(0)