JAVA课设 扫雷游戏

合集下载

JAVA课程设计扫雷含代码

JAVA课程设计扫雷含代码

0
随机生成:使用随 机数生成器生成地 图
地图大小:根据游 戏难度设置地图大 小
地雷分布:在地图 上随机分布地雷
标记地雷:在地图 上标记地雷位置, 方便玩家识别
雷区标记逻辑
初始化:创建雷区数组,设置初始状态 标记雷区:当玩家点击雷区时,标记为雷区 更新雷区:当玩家点击非雷区时,更新雷区状态 判断胜负:当所有非雷区都被标记时,游戏结束,判断胜负
游戏结束:当所有非雷方格都被点击,或者玩家踩到雷时,游戏结束
游戏界面设计
游戏界面分为两个部分:游戏区和菜单区 游戏区显示游戏地图和地雷位置 菜单区包括开始游戏、暂停游戏、重新开始、退出游戏等按钮 游戏界面采用简洁明了的设计风格,易于玩家操作和理解
游戏流程控制
初始化游戏:创建游戏界面,设置游戏参数 玩家输入:接收玩家输入的坐标,判断是否合法 游戏逻辑:根据玩家输入,更新游戏状态,判断是否触发雷 游戏结束:判断游戏是否结束,显示游戏结果 重新开始:提供重新开始游戏的选项,重新开始游戏流程
05
JAVA扫雷游戏代码实 现
游戏主程序代码实现
初始化游戏界面 生成随机雷区 玩家点击操作 判断输赢条件 游戏结束处理
游戏地图类代码实现
初始化地图,设置地雷位置 和状态
创建游戏地图类,定义地图 大小和地雷数量
实现地图显示,绘制地雷和 空白区域
实现地图更新,根据玩家操 作更新地雷状态和显示
游戏雷区类代码实现
感谢您的观看
汇报人:
兼容性:测试游戏在不同操作系统 和硬件配置下的兼容性
添加标题
添加标题
添加标题
添加标题
稳定性:测试游戏在长时间运行下 的稳定性
用户体验:测试游戏的易用性和用 户体验

(完整word版)JAVA课程设计--扫雷游戏

(完整word版)JAVA课程设计--扫雷游戏

合肥学院计算机科学与技术系课程设计报告2009~2010学年第二学期课程Java语言与应用课程设计名称扫雷游戏学生姓名胡远远学号0604031005专业班级07网络工程一班指导教师许强张贯虹2010年09月1.设计内容及要求1.1 扫雷游戏的基本要求Windows 2000/XP系统提供的扫雷游戏是一个很有趣的游戏。

本章的课程设计使用Java语言编写一个与其类似的扫雷游戏。

具体要求如下:(1)选择级别后将出现相应级别的扫雷区域,这是用户使用鼠标左键单击雷区中任何一个方块便启动计时器。

(2)用户要揭开某个方块,可单击它。

若所揭方块下有雷,用户便输了这一局,若所揭方块下五雷,则显示一个数字,该数字代表方块的周围的8个方块中共有多少颗雷。

(3) 如果用户认为某个方块下埋着雷,单击右键可以在方块上标识一个用户认为是雷的图标,即给出一个扫雷标记。

用户每标记出一个扫雷标记(无论用户的标记是否正确),程序将显示的剩余雷数减少一个。

(4)扫雷胜利后,显示游戏胜利。

(5) 用户可以右击空格,可以选择标记为“旗帜”、“问号”或者返回成空格。

1.2 需实现的主要功能(1)用户点击笑脸实现复位操作。

调用repaint()和validate()函数对界面进行重置以及刷新操作(2)可以显示用户完全扫雷成功所花时间。

文本框TF记录扫雷成功所花的时间(3)在失败和胜利后跳出失败或胜利的文本框JoptionPane 该类用来调出对话框并提示胜利2.需求分析2.1 扫雷棋盘的布局设计系统的整体布局为:CardLayout布局, 采用了文本框、按钮、面板、框架…等组件,菜单主要有run按钮笑脸和哭脸,按钮的功能是重新开始新的游戏。

2.2 雷区的设计MineArea类是javax.swing包中Jpanel容器的子类,实现了ActionListener 和MouseListener接口,所创建的对象:mineArea是MineGame类中最重要的成员之一,作为一个容器添加到MineGame窗口的中心。

简单扫雷java课程设计框图

简单扫雷java课程设计框图

简单扫雷java课程设计框图一、课程目标知识目标:1. 学生能理解Java基础语法,掌握面向对象编程的基本概念。

2. 学生能掌握简单扫雷游戏的逻辑设计,包括二维数组的使用、随机数的生成。

3. 学生能运用Java编程实现简单扫雷游戏的界面布局与功能。

技能目标:1. 学生能够运用所学知识,独立设计并编写简单扫雷游戏的框图和代码。

2. 学生能够运用调试工具,找出并修正编程过程中的错误。

3. 学生能够通过小组合作,培养团队协作能力和沟通能力。

情感态度价值观目标:1. 学生通过学习Java编程,培养解决问题的能力和创新思维。

2. 学生在游戏编程过程中,体验编程的乐趣,激发对计算机科学的兴趣。

3. 学生在团队合作中,学会尊重他人意见,培养良好的团队精神和沟通能力。

本课程针对初中年级学生,结合学科特点,注重培养学生的编程兴趣和实际操作能力。

课程以Java编程语言为基础,通过设计简单扫雷游戏,让学生在实践过程中掌握编程知识和技巧。

课程目标明确,可衡量,旨在帮助学生将所学知识应用于实际项目中,提高学生的编程能力和团队协作能力。

二、教学内容1. Java基础语法复习:变量、数据类型、运算符、控制结构(条件语句、循环语句)。

2. 面向对象编程基础:类与对象、构造方法、属性、方法。

3. 二维数组:定义、初始化、遍历、访问。

4. 随机数生成:Random类、Math类。

5. 简单扫雷游戏逻辑设计:游戏规则、雷区生成、扫雷功能、标记功能。

6. 界面布局与设计:使用Java Swing库,掌握JFrame、JButton、JLabel等组件的使用。

7. 事件处理:鼠标点击事件、键盘事件。

8. 游戏功能实现:编写代码实现游戏逻辑、界面交互、胜利条件判断。

教学内容根据课程目标进行选择和组织,以课本为依据,结合学生实际水平,确保科学性和系统性。

教学大纲明确教学内容安排和进度,分为八个部分,循序渐进地引导学生学习。

教学内容涵盖Java编程基础、面向对象编程、数组、随机数生成等,以及简单扫雷游戏的设计与实现,旨在帮助学生将所学知识应用于实际项目中,提高编程技能。

java扫雷课程设计

java扫雷课程设计

java 扫雷 课程设计一、课程目标知识目标:1. 理解并掌握Java基本语法和程序结构;2. 学会使用二维数组存储和处理扫雷游戏的数据;3. 掌握循环、条件判断等基本编程逻辑;4. 了解随机数的生成和应用。

技能目标:1. 能够编写并调试简单的Java程序;2. 能够运用所学知识设计并实现扫雷游戏的初级版本;3. 提高问题分析、程序设计和编程实现的能力;4. 培养团队协作和沟通表达能力。

情感态度价值观目标:1. 培养学生对编程的兴趣和热情,激发学习积极性;2. 培养学生勇于尝试、面对挑战的精神;3. 增强学生的逻辑思维能力和解决问题的自信心;4. 引导学生关注程序设计在现实生活中的应用,认识到编程的价值。

课程性质分析:本课程为中学信息技术课程,结合Java编程语言和扫雷游戏设计,旨在提高学生的编程兴趣和实际操作能力。

学生特点分析:初中年级学生对新鲜事物充满好奇,具备一定的逻辑思维能力,但编程基础薄弱,需要通过实际操作和趣味性强的案例来提高学习兴趣。

教学要求:1. 注重理论与实践相结合,让学生在实际操作中掌握Java编程知识;2. 采用任务驱动法,引导学生主动探究和解决问题;3. 创设有趣的游戏场景,提高学生的学习积极性;4. 分阶段教学,逐步提高学生编程能力和逻辑思维能力。

二、教学内容1. Java基本语法与程序结构- 数据类型、变量、常量- 运算符、表达式、语句- 程序流程控制(顺序、分支、循环)2. 二维数组的使用- 二维数组的定义、初始化- 遍历二维数组- 二维数组的应用场景3. 编程逻辑- 循环结构(for、while)- 条件判断(if、else、switch)- 随机数的生成与应用4. 扫雷游戏设计与实现- 游戏规则及界面设计- 二维数组存储雷区数据- 排雷逻辑实现- 游戏胜负判断5. 编程实践- 设计并编写扫雷游戏代码- 调试与优化程序- 团队协作与分享教学内容安排与进度:第1-2课时:Java基本语法与程序结构第3课时:二维数组的使用第4课时:编程逻辑第5-6课时:扫雷游戏设计与实现第7课时:编程实践与总结教材章节关联:《Java编程基础》第1章:Java概述《Java编程基础》第2章:数据类型与运算符《Java编程基础》第3章:控制流程《Java编程基础》第4章:数组与方法《Java编程基础》第5章:面向对象编程(部分内容)教学内容科学性和系统性:确保教学内容符合学科知识体系,由浅入深,让学生逐步掌握Java编程基础知识,并通过实际案例将所学知识应用于实践。

java课程设计扫雷

java课程设计扫雷

java课程设计扫雷一、课程目标知识目标:1. 让学生掌握Java基础语法,包括变量声明、数据类型、运算符和流程控制语句;2. 培养学生运用面向对象编程思想,掌握类与对象的基本概念,以及继承、封装和多态等特性;3. 通过扫雷游戏的案例,让学生学会使用二维数组处理游戏逻辑。

技能目标:1. 培养学生运用所学知识独立编写程序的能力,实现扫雷游戏的主体功能;2. 提高学生分析问题、解决问题的能力,学会运用模块化思维进行编程;3. 培养学生团队协作意识,学会在项目中分工合作、共同完成项目。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习热情,形成积极向上的学习态度;2. 培养学生面对困难敢于挑战、勇于克服的精神,增强自信心;3. 培养学生遵守编程规范,养成良好的编程习惯。

本课程针对高年级学生,在已有Java基础知识的基础上,通过设计扫雷游戏项目,使学生在实践中巩固和提高所学知识。

课程注重培养学生的编程技能、团队协作能力和解决实际问题的能力,同时关注学生的情感态度价值观培养,使学生在轻松愉快的氛围中学习编程。

课程目标具体、可衡量,为教学设计和评估提供明确方向。

二、教学内容1. Java基础语法复习:变量声明、数据类型、运算符、流程控制语句(包括条件语句、循环语句等);2. 面向对象编程:类与对象、构造方法、继承、封装、多态;3. 二维数组:声明、初始化、遍历、应用;4. 游戏设计原理:游戏循环、事件处理、界面设计;5. 扫雷游戏项目开发:需求分析、模块划分、编码实现、测试与优化。

教学内容参考教材相关章节,结合课程目标进行组织。

教学大纲安排如下:1. 复习Java基础语法(1课时);2. 面向对象编程知识讲解与练习(2课时);3. 二维数组知识讲解与练习(1课时);4. 游戏设计原理介绍(1课时);5. 扫雷游戏项目开发:需求分析、模块划分(1课时);6. 扫雷游戏项目开发:编码实现、测试与优化(3课时)。

扫雷java课程设计

扫雷java课程设计

扫雷java课程设计一、课程目标知识目标:1. 掌握Java基础语法,包括数据类型、运算符、控制流程等;2. 学会使用Java进行面向对象编程,理解类与对象的关系,掌握封装、继承、多态等概念;3. 了解Java图形用户界面(GUI)设计,掌握Swing组件的使用;4. 学会使用Java异常处理,提高程序的稳定性和可靠性;5. 掌握扫雷游戏的逻辑设计和实现。

技能目标:1. 能够运用Java编写简单的程序,实现基础功能;2. 能够运用面向对象思想进行问题分析,设计合理的类和对象;3. 能够独立完成扫雷游戏的编写,具备一定的编程实践能力;4. 能够运用所学知识解决实际问题,具备一定的创新和拓展能力。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发学习动力;2. 培养学生良好的编程习惯,注重代码规范和优化;3. 培养学生面对问题积极思考、独立解决的能力,增强自信心;4. 培养学生团队合作精神,学会沟通与协作。

课程性质:本课程为Java语言编程实践课程,以项目为导向,注重培养学生的编程能力和实际操作能力。

学生特点:学生具备一定的计算机基础,了解编程基本概念,但对Java语言和面向对象编程尚不熟悉。

教学要求:结合学生特点,采用案例教学,由浅入深地引导学生掌握Java编程技能,注重实践操作,提高学生编程水平。

同时,关注学生情感态度价值观的培养,使学生在学习过程中形成积极、主动的学习态度。

通过课程学习,将目标分解为具体的学习成果,便于后续教学设计和评估。

二、教学内容1. Java基础语法:- 数据类型与变量- 运算符与表达式- 控制流程(if条件语句、for循环、while循环)- 数组的使用2. 面向对象编程:- 类与对象- 封装、继承、多态- 抽象类与接口- 包的使用3. Java图形用户界面设计:- Swing组件基本使用- 布局管理器- 事件处理机制4. 异常处理:- 异常的概念与分类- try-catch-finally结构- 自定义异常5. 扫雷游戏设计与实现:- 游戏逻辑分析- 界面设计- 功能模块编写(如:初始化雷区、计算周围雷数、标记与挖雷等)- 游戏测试与优化教学内容安排与进度:第一周:Java基础语法学习第二周:面向对象编程基础第三周:Java图形用户界面设计第四周:异常处理与扫雷游戏逻辑分析第五周:扫雷游戏功能模块编写与测试本教学内容根据课程目标,结合教材章节进行选择和组织,确保内容的科学性和系统性。

java扫雷源代码和课程设计

java扫雷源代码和课程设计

java扫雷源代码和课程设计一、课程目标知识目标:1. 学生能理解Java语言中面向对象编程的基本概念,包括类、对象、继承、封装和多态。

2. 学生能掌握Java的基本语法,如条件语句、循环语句、数组的使用。

3. 学生能运用所学知识实现扫雷游戏的逻辑设计。

技能目标:1. 学生通过分析扫雷游戏的规则,能自主设计游戏的类和对象,提升问题分析能力。

2. 学生能编写并调试扫雷游戏的源代码,培养编程实践能力。

3. 学生能通过课堂讨论和协作,提高团队协作和沟通能力。

情感态度价值观目标:1. 学生在探索Java编程的过程中,培养对计算机科学的兴趣和热情。

2. 学生通过解决编程问题,锻炼克服困难的意志,增强自信心。

3. 学生在团队合作中,学会尊重他人意见,培养良好的合作精神和沟通技巧。

课程性质:本课程为信息技术课程,旨在通过实际操作和项目实践,帮助学生掌握Java编程的基本知识和技能。

学生特点:学生处于高年级阶段,具备一定的编程基础和逻辑思维能力,对实际项目开发有较高的兴趣。

教学要求:教师应注重理论与实践相结合,引导学生主动探索,关注学生个体差异,提供针对性的指导。

在教学过程中,关注学生的情感态度,激发学生的学习兴趣,培养其良好的编程习惯和团队合作精神。

通过课程目标的分解和实施,确保学生达到预期的学习成果。

二、教学内容1. 面向对象编程基础:- 类的定义与使用- 对象的创建与操作- 继承、封装和多态的概念与应用2. Java基本语法:- 条件语句(if-else,switch)- 循环语句(for,while,do-while)- 数组的使用与操作3. 扫雷游戏逻辑设计:- 游戏规则分析- 类的设计与实现(如:雷区类、格子类、游戏界面类等)- 游戏逻辑的编写与调试4. 项目实践:- 分组讨论与协作- 源代码编写与调试- 游戏功能测试与优化教学内容安排和进度:1. 第1-2课时:面向对象编程基础,引入类和对象的概念,讲解继承、封装和多态。

复制java扫雷游戏课程设计

复制java扫雷游戏课程设计

复制java扫雷游戏课程设计一、课程目标知识目标:1. 让学生掌握Java基础语法和面向对象编程思想,能运用所学知识编写简单的游戏程序;2. 让学生了解扫雷游戏的基本规则和逻辑,理解游戏设计的基本流程;3. 使学生掌握使用Java进行二维数组操作和基本算法实现。

技能目标:1. 培养学生独立编写Java程序的能力,提高编程实践技能;2. 培养学生分析问题、解决问题的能力,能够将实际问题转化为程序逻辑;3. 培养学生团队协作和沟通能力,能够共同完成一个完整的游戏项目。

情感态度价值观目标:1. 激发学生对编程的兴趣,培养学生主动探究、自主学习的精神;2. 培养学生面对挑战时的坚持和耐心,树立克服困难的信心;3. 培养学生遵守编程规范,养成良好的编程习惯,提高职业道德素养。

课程性质:本课程为实践性较强的编程课程,以项目为导向,注重培养学生的动手能力和实际应用能力。

学生特点:学生具备一定的Java基础,对编程感兴趣,但实践经验不足,需要通过实际项目来提高。

教学要求:教师需引导学生掌握游戏设计的基本原理和编程技巧,注重启发式教学,鼓励学生积极参与讨论和实际操作。

同时,关注学生的个体差异,给予不同学生个性化的指导。

通过本课程的学习,使学生能够独立完成一个Java扫雷游戏的编写,达到预期的学习成果。

二、教学内容1. Java基础语法复习:变量、数据类型、运算符、控制结构(条件语句、循环语句);2. 面向对象编程:类与对象、继承与多态、接口与实现;3. 二维数组:数组声明、初始化,遍历和操作二维数组;4. 游戏设计原理:扫雷游戏规则、界面设计、逻辑实现;5. 编程实践:使用Java编写扫雷游戏的各个模块,如界面展示、地雷生成、翻开格子、标记地雷等;6. 算法实现:查找算法、递归算法等在扫雷游戏中的应用;7. 软件测试:单元测试、集成测试,确保游戏程序的正确性和稳定性;8. 项目实战:分组进行项目开发,按照软件工程流程,完成需求分析、设计、编码、测试和总结。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Java.awt 是 java 基本包中最大的一个,其中定义了所有的 GUI 组件类,以及其他 用于构造图形界面的类。
2.2 需求分析
(1)扫雷游戏分为初级、中级和高级三个级别,扫雷英雄榜存储每个级别的最好成绩, 即挖出全部的地雷且用时最少者。单击游戏菜单可以选择“初级”、“中级”和“高级” 或查看“英雄榜”。 (2)选择级别后将出现相应级别的扫雷区域,这时用户使用鼠标左键单击雷区中的任 何一个方块便启动计时器。
课程设计说明书
NO.1
扫雷游戏 1 设计目的
本次课程设计是用 Java 语言及相关知识设计一个扫雷游戏系统,完成扫雷游戏的 基本功能,并在此基础上,自行完善和优化系统功能。理解掌握选择游戏级别,记录 游戏时间和保存游戏成绩的方法,学习程序设计的基本思路和方法,培养计算机专业 学生运用所学知识解决计算机应用领域内实际问题能力,进一步提高学生动手操作能 力和用 Java 语言综合编程能力,程序调试技能。
下按钮遮挡住标签。当用户单击按钮后,如果 Block 对象是雷,BlockView 对象中的标
签显示的是雷的图标;如果 Block 对象不是是雷,标签显示的是当前 Block 对象周围雷
的总数。
(5)LayMines.java LayMines 类对象不需要视图,在游戏中不需要看见该对象。LayMines 对象使用随
MineGame 类之间组合关系的 UML 图如图 4 所示。
沈阳大学
课程设计说明书
NO.6
JPanel
ActionListene r
MouseListene r
MineArea
row , colum , mineCount , markMount : int lay :
LayMines
block
2 方案论证 2.1 背景
图形用户界面简称 GUI,是用图形的方式,借助菜单、按钮等标准界面元素和鼠 标操作,帮助用户方便地向计算机系统发出指令、启动操作,并将系统的运行结果同 样以图形的方式显示给用户的技术。JAVA 的图形用户界面技术即为使用 java.awt 包来 创建图形界面的方法,包括 AWT 组件、窗口和菜单设计、布局管理期以及绘图操作等。
沈阳大学
课程设计说明书
NO.2
(3)用户要揭开某个方块,可单击它。若所揭方块下有雷,用户便输了这一局,若所
揭方块下无雷,则显示一个数字,该数字代表方块的周围的 8 个方块中共有多少颗雷。
(4)如果用户认为某个方块下埋着雷,单击右键可以在方块上表示一个用户认为是雷 的图标,即给出一个扫雷标记。用户每标记一个扫雷标记(无论用户的标记是否正确),
isOpenboolean
setAroundMineNumber(int):void
get AroundMineNumber():int
图 5 Block 类的 UML 图
以下是 UML 图中有关数据和方法的详细说明。
(1)成员变量
1)name 是方块上的名字。
2)aroundMineNumber 是方块周围雷的数目。
ShowRecord 对象负责读取文件数据的界面。
2.3.2 详细设计
扫雷游戏的流程图如图 2 所示。 1.MineGame 类
MineGame 类是 javax.swing 包中 JFrame 的一个子类,并实现了 ActionListener 接
口,标明该类的主要成员变量和方法的 UML 图如图 3 所示。
AWT 既抽象窗口工具集,用于图形用户界面的开发。AWT 的功能包括以下方面: (1) 丰富的图形界面组件。 (2) 强大的事件处理模型图形和图形工具,暴扣形状、颜色和字体。 (3) 布局管理器,可以进行灵活的窗口布局,设计特定窗口的尺寸和屏幕分率。 (4) 无关数据传送类,可以通过本地平台的剪贴板来进行剪切和粘贴操作。 (5) 打印和无鼠标操作。
3)“英雄榜”负责存放三个级别的扫雷最好的成绩。
4)showHeroRecord 负责显示英雄榜中的数据。
(2)方法
1)MineGame( )是构造方法,负责完成窗口的初始化。
2)actionPerformed(ActionEvent)方法是 MineGame 类实现的 ActionListener 接口中的方

Block[][]
record:Reew[][]
reStart:JButton
showTime:JTextField
time:Timer
showMarkedMineCount:JTextField
MineGame mineArea MineArea
initMineArea(int,int,int):void show(int m,itn n): void actionPerformed(Action图Ev4eMnitn)e:Arveaoi类d 的 UinMquLir图eWin() : void 以下是moUusMePLre图ss中de有(M关ou数se据Ev和en方t):法v的oi详d 细说明。 (1)成员变量 1)block 是 Block 类型的数组,用来确定雷区有多少需进行扫雷的方块。 2)blockView 是 BlockView 类型的数组,负责为 block 数组中的 Block 对象提供视图。 3)lay 是 LayMines 类型的对象,负责设置 block 数组中的哪些方块是雷或不是雷。 4)record 负责提供保存成绩的界面,是一个对话框,默认不可见。用户只有扫雷成功 后(用时最少者),才可以看见该对话框。 6)reStart 是一个按钮对象,用户单击它重新开始游戏。 7)time 是计时器对象,负责计算用户的用时。 (2)方法 1)initMineArea(int,int,int,int)方法可根据参数提供的数据设置雷区的宽度、高度、雷的 数量以及雷区的级别。 2)actionPerformed(ActionEvent)是 MineArea 类实现的 ActionListener 接口中的方法。 当用户单击 blockView 中的某个方块时,actionPerformed(ActionEvent)方法负责执行有 关算法,例如,当用鼠标左键单击方块上的按钮后,若方块下有雷, actionPerformed(ActionEvent) 方 法 将 使 用 户 输 掉 本 局 , 若 该 方 块 下 无 雷 , actionPerformed(ActionEvent)方法将显示 BlockView 对象中的标签,该标签上是一个数
当用户按下鼠标右键时,actionPerformed(ActionEvent)方法负责让方块上线是一个探雷
标记。
5)inquireWin( )方法用来判断用户是否扫雷成功,如果成功该方法负责让 record 对话
框可见。所谓扫雷成功是指不仅找到全部的雷而且用时最少。
3.Block 类
Block 类创建的对象是数组 block 的单元中的对象。Block 型数组 block 是 MineArea
机算法指定 MineArea 对象中的哪些 Block 对象是雷,哪些 Block 对象不是雷。
(6)Record.java Record 类是 JDialog 对话框的子类,当用户扫雷成功时,Record 对象负责保存用
户的成绩到文件。
(7)ShowRecord.java ShowRecord 类 是 JDialog 对 话 框 的 子类 ,当 用 户查 看 扫雷 的最好 成 功时 ,
类的重要成员之一。标明 Block 类的主要成员变量和方法以及和 MineArea 类之间组合
关系的 UML 图如图 5 所示。
Block
name : String
isMine :
boolean
aroundMineNumber : int
isMine :
boolean
mineIcon:ImageIcon
为雷区创建代表“方块”的 Block 对象。
(4)BlockView.java BlockView 是 JPanel 容器的子类,BlockView 创建的对象负责为 Block 对象提供视
图,以便用户通过该视图与 Block 对象交互。BlockView 对象使用一个标签和按钮为 Block 对象提供视图,标签和按钮按着卡片布局(CardLayout)层叠在一起,默认状态
象。
(2)MineArea.java
沈阳大学
课程设计说明书
NO.3
MineArea 类创建的对象是 MineArea 类最重要的成员之一,代表“扫雷区域”。该
类的成员变量中有 5 个重要类型的对象:Block、BlockView、LayMines 和 Record。
(3)Block.java Block 类是雷区中“方块”的类封装,含有关于“方块”的属性以及操作,即负责
扫雷游戏除了需要编写上述 7 个 Java 源文件所给出的类外,还需要 Java 系统提供
的一些重要的类,如 File、JButton 和 JLabel 等类。扫雷游戏所用到的一些重要的类以
及之间的组合关系如图 1 所示。
MineGame
File
MineArea
ShowRecord
Block
BlockView
沈阳大学
课程设计说明书
NO.4
图 2 流程图
JFrame
ActionListe ner
MineGame bar:JMenuBar; fileMenu:JMnu 初级,中级,高级,扫雷英雄榜: JMenuItem mineArea:MineArea 英雄榜:File showHeroRecord:ShowRecord MineGame(): actionPerformed(ActionEvent) main(String[]):void
沈阳大学
课程设计说明书
相关文档
最新文档