- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java应用技术实训报告
一.总体设计
本系统共包括3个java源文件和4个图像文件
1.类之间的关系如图1.1所示
图1.1类之的关系
2 . java源文件及其功能如表1所示
表1源文件及其功能
序号
文件名
主要功能
1
Ma in .java
生成的类负责创建程序窗口,含有 main方法,游戏从
该类开始执行。
2
Main Bomb.java
为主类创建整个挖雷游戏的对象,包括窗口,布雷,判 断等等。
3
Bomb.java
负责创建游戏所需要的按钮。
3.图像文件
Bomb.gif :地雷方块上的图标。
questio n.gif :疑惑探雷是否正确。
bomb_big.gif :触雷时方块上的图标。
flag.gif :探雷标记。
、详细设计
、详细设计
1 .主类Main
(1 )成员变量(见表2)
表2
成员变量描述
变量类型
备注
游戏运行
Mai nBomb
临时变量
(2)成员变量(见表3)
表3
名称
功能
备注
mai n
游戏开始
(3)源代码见文件Ma in .java
import java.awt.*;
import java.awt.eve nt.*;
import javax.swi ng.*;
/*主类*/
public class Mai n
{
public static void main(String args[])
{
(new Main Bomb()).show();
}
}
2 .挖雷游戏MainBomb
(1 )成员变量(见表4)
表4
成员变量描述
名称
变量类型
雷数设置
JTextField
text
当前方块数
int
BlockNum
当前雷数
int
BombNum
开始
JButton
start
踩雷
Ico n
icon _bomb
踩雷标记
Ico n
icon _bomb_big
雷标记
Ico n
icon _flag
疑惑是否有雷
Ico n
icon _questi on
目录面板
Panel
Men uPamel
主面板
Panel
mai nPanel
雷
Bomb[][]
bombButt on
该方块是否有雷
boolea n
周围无雷
方块周围的雷数
int
周围的雷数
方块上的雷标记
int
探雷标记
显示方块信息
JLabel
Label
方块在雷区的位置
Poi nt
P
布雷
Ran domSet
set
判断标记是否正确
Determi ne
Determi ne
是否获得胜利
Winner
Win
雷标数目
int
cou nt
周围方块的雷数
int
count1
(2)方法见(表5)
表5
方法名
功能
备注
Game
创建程序窗口
bar
n ewGame
新开局
action Performed
处理ActionEvent 事件
接口方法
设置方块是否有雷
设置雷的值
设置是雷时的图标
设置label上的图标
设置无雷时的图标
设置label上的图标
设置有雷时的名字
设置label上的文字
设置周围的雷数
设置周围的雷数
获取名字
返回方块label上的文字
获取周围雷数
返回周围的雷数
设置雷区位置
设置属性P
获取雷区位置
返回属性P
获取探雷标记
返回探雷标记
mousePressed
处理鼠标按下事件
接口方法
mouseClicked
处理鼠标双击事件
接口方法
mouseReleased
处理鼠标释放事件
接口方法
mouseExited
处理鼠标退出事件
接口方法
mouseE ntered
处理鼠标进入事件
接口方法
Min esSquare
创建雷区
gameOver
游戏失败
判断雷标是否正确
正确返回true错误返回false
布雷
随机布雷
判断是否成功
成功返回true失败返回false
(3)源代码见文件MainBomb.java
import java.awt.*;
import java.awt.eve nt.*;
import javax.swi ng.*;
/*窗口及算法实现类*/
JFrameimpleme ntsclass Mai nBomb exte nds
JFrame
impleme nts
Actio nListe ner,MouseListe ner
public JTextField text;
public Label nowBomb,setBomb;
public int BlockNum,BombNum;
// 当前方块数当前雷数
public Icon icon_bomb = new ImageIcon("Bomb.gif");
// 踩雷
public Icon icon_bomb_big = new ImageIcon("bomb_big
文档评论(0)