java扫雷游戏计算机毕业设计答辩PPT.ppt
,JAVA版扫雷游戏,2014年4月17日,目录页,contents,04 概要设计,05 详细设计,06 系统测试,1、选题,电脑游戏,扫雷游戏,扫雷游戏是Windows操作系统自带的一款小游戏,虽然Windows操作系统历经数次换代更新,变得越来越庞大、复杂,功能也越来越强大,但是这款小游戏依然是该系统装击必备的软件,可见这款小游戏受到越来越多人的喜爱。,随着计算机与网络的普及,人们生活水平的提高,电脑游戏越来越成为人们生活中不可或缺的一部分。尤其是现代社会人们工作压力急剧增加,急于寻求一种排解的方式,然后电脑游戏就成了大家的首选。,-大众排解压力的方式,-永盛不衰,意义,1、开发语言,JAVA是一种可以撰写跨平台应用软件的面向对象的程序设计语言,JAVA,JAVA具有通用性、高效性、平台移植性和安全性等多种特性,2、可行性分析,研究前提(设计要求),游戏界面分为菜单区和雷区。游戏级别分为初级、中级和高级三个级别点击菜单区中的游戏可以选择级别。,选择级别后将出现相应级别大小的雷区,玩家左击鼠标时计时器开始计时。当单击雷区中的方块时,如果没有踩到雷,则方块显示数字为几,就说明该数字周围一圈的8个位置中有几个雷,如果踩到的事雷,那么游戏结束,即输掉游戏。,玩家在游戏过程中可以点击右键来标记自己认为可能是雷的方块,以减少雷的数量(注意不管所标记的是否为雷,雷数都会减一)。若玩家把所有非雷的方块找出则胜利。,经济可行性:开发此游戏所需成本即为人力成本与物力成本,二者只需考虑电,技术可行性:该游戏由JAVA语言编写,由于本人在学校中学习过java程序设计,法律可行性:扫雷游戏不与任何法律或国家相关规定相抵触,在法律上可行性,操作可行性:本次开发使用Eclipse软件进行编程,由于程序可以跑起来,所,2、可行性研究,各方面的分析,费问题即可,而此开发潜在的市场前景较为光明,由于此游戏受欢迎程度较高,所以收益定会远大于成本,故此开发经济可行。,实用教程,还在培训过程中学习了core java,所以对java语言有一定的掌握程度。另外现在网络较为发达,还可以在学校图书馆登陆中国知网,查找资料十分方便,故此开发技术可行。,以证明在这个应用范围内系统的操作方式行得通。,是通过的。另外在设计过程中没有任何违法违规操作,也不会对任何企业的系统进行侵权,更不会侵犯他人、集体和国家的利益,故本次开发在法律上可行。,3、需求分析,功能需求,3、需求分析,功能需求,玩家可以自己选择游戏级别,且级别不同,雷 数不同;,游戏具有计时功能,即 可显示玩家从游戏开始 后所花费的时间;,玩家可以右键标记雷数,无论此方块是否为雷,雷数均减一;,点击方块,未踩到雷时,必须保证其周围8个方块 中雷数与方块显示的数字 相同。,3、需求分析,环境需求与界面需求,环境需求:,该扫雷游戏系统运行在Eclipse平台下,所用电脑机型为惠普ProBook 6450b。,界面需求:,本次扫雷游戏设计界面分为两大块,即菜单区和雷区。菜单区包含游戏(点击可选择初级、中级、高级),帮助(可查看扫雷游戏说明),计时器(显示游戏进行时间),开始(点击可开始游戏)以及雷数显示器(显示玩家标记后的剩余雷数)。雷区由许多小方块组成,根据级别不同,方块数目不同,但均由大小相同的小方块组成。,4、概要设计,关系调用图,本次扫雷游戏设计,编写了一个java源程序:Minesweeper.java,其中包含了两个类:Minesweeper和NormoreMouseEvent,Minesweeper类中拥有5个方法:initGUI()、go()、main()、out()和actionPerformed();而NormoreMouseEvent类中有一个方法:mouseClick()。在我的设计中,按方法来划分模块,把一个方法分成一个模块,故有六个模块。,4、概要设计,各模块,initGUI()方法:声明初始化图形界面方法,设置雷区的宽度,高度,go()方法:设置显示窗体;,main()主方法:用来实例化窗体对象,调用go()方法将窗体显示在,out()方法:是一个递归方法,用于设置各个雷区中的方块显,以及雷区的级别。,显示内容及其周围8个方块的情况;,actionPerformed()方法:负责执行有关算法,分别从初级、中级、高级各个,级别来调用out()方法进行扫雷;,mouseClicked()方法:是NormoreMouseEvent类中的一个接口方法。该,方法当鼠标单击时会触发。,屏幕之上;,5、详细设计,流程图,扫雷游戏系统流程图如下图所示:,5、详细设计,主要算法设计(由于内容较多,故只少数列举),1,2,计算按钮周围的雷数,例如:if(n-1此段代码设置如果该方块上一行前面左右的按钮相应位置的值既不是雷又不是以及点击过的按钮,则说明该按钮周围有雷。,使用了Math类中的random()方法来产生随机数,用于布雷时随机指定雷所在的位置,代码如下:for(int i=0;ibon;i+)int p=1;int m=(int)(Math.random()*row*col);while(p=1)int l=1;int j;for(j=0;ji,6、系统测试,程序运行,显示出的界面,点击菜单中的游戏时,显示三个级别选项,6、系统测试,点击菜单中的帮助时,出现两个选项,游戏说明与关于扫雷,点击游戏说明时,出现一个面板,显示游戏的具体操作方法,点击关于扫雷时,又出现一个面板,扫雷游戏的简介:,6、系统测试,选择中级时,界面会出现与之匹配的大小,选择高级时,界面也会出现与之匹配的大小,6、系统测试,下面测试均以初级为例,点击开始时,计时器开始计时,根据游戏规则,确定某个方块为雷时,点击右键标记,该方块则显示为“”,6、系统测试,当把雷全部找出时,系统提示“你赢了!”,但当未标记出某个雷,而踩到雷时,系统提示“你输了!”,形成对比,恳请老师指出不足之处!,答辩人:,2014年4月17日,谢谢观看!,