欢迎来到天天文库
浏览记录
ID:44931311
大小:123.50 KB
页数:9页
时间:2019-11-05
《Java程序设计综合实验报告[郭佳组]》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《Java程序设计》综合实验报告学院软件学院年级2011级学号20113743,20112389,20112321,20112274,20112285,20112263姓名组长:郭佳组员:杨宏枫、杨红雪、姜海南、张一男、何宏达指导教师陈立岩项目名称扫雷游戏开发报告日期2012年12月10日得分组长:郭佳:组员:杨宏枫杨红雪张一男何宏达姜海南黑龙江大学计算机科学技术学院、软件学院一、前言1、项目背景开发软件:扫雷游戏项目任务提出者:陈立岩老师项目开发者:2011级软件六班郭佳小组用户:尊敬的陈老师以及各位评分老师和小组
2、开发人员实现软件的单位:2011级软件六班郭佳小组2、目标和意义随着软件开发就业的压力逐渐增大,对学生的动手能力要求较高,作为软件专业的学生必须要拥有足够的能力去面对当前的形式,我们就必须去锻炼自己,锻炼自己的实践能力,自己和同学开发扫雷游戏就是锻炼自己的一个机会,扫雷使我们Java开发的一个开端,他是一个简单的小游戏,比较简单,主要实现界面设计、消息响应、Java的类的应用,还能让我们对软件开发流程进一步了解3、开发分工及进度安排1)分工:界面设计:杨红雪、何宏达图片选择以及处理:杨宏枫、杨红雪、郭佳(组长)实验报
3、告制作:杨宏枫游戏算法:张一男、姜海南事件的实现以及各部分整合:郭佳(组长)游戏级别设计(初级、中级、高级):郭佳(组长)游戏帮助、游戏英雄榜、退出、游戏的自定义模式:杨宏枫2)进度安排首先要求界面设计在第一周之内完成,主要部件以及雷盘及相关按钮必须实现;在此期间图片选择以及处理必须将图片选择好并且将图片Ps好,准备用于游戏点击效果的开发,同时游洗算法要进行构思、如何实现;第二周上交自己的负责部分,事件的实现负责将每个按钮添加监听器,让事件得以实现,同时负责游戏级别部分设计,以及负责游戏帮助、英雄榜、退出、游戏的自定
4、义模式要在2-3周之内完成负责部分;其次所有模块上交到组长,组长负责整合大家的模块,在整合期间如有问题大家随时帮助解决;最后所有模块都完成,扫雷游戏基本开发完毕,大家要分别讲出自己开发、设计的思想以及在实现过程中所遇到的困难如何解决的、这样有利于大家了解整个开发的过程;设想自己能不能单独开发一个游戏、总结自己在其中所收获的知识;二、功能分析1、主要模块1)制作界面(菜单、计时器、笑脸、雷盘)2)给按钮添加动作3)造雷4)设计点击效果(为了测试雷)5)设置右点击效果(添加计雷器)6)制作扩散效果(扩散到雷的周围时要把雷
5、数显示出来)7)制作WinLose的效果8)设置系统栏功能(初级、中级、高级、退出)9)设置帮助10)添加计时器11)制作Win、Lose帮助对话框2、系统操作在安装Eclipse、UE、MyEclipse、Jcreator时要注意环境变量的配置,设置ClassPath、Javahome等。3、系统配置需要安装Java的开发环境例如Eclipse、UE、MyEclipse、Jcreator。4、限制与条件由于所学知识的限制,很多想到的功能不能实现,例如想给游戏中添加背景音乐,制作出玩家输赢时的音乐效果,希望在以后的学
6、习中能够加以完善。三、关键功能的设计与实现1、数据结构除了部分的类(Class)外,扫雷程序没有涉及到比较复杂的数据结构,界面区域也只采用了数组的存储2、流程图扫雷开始线程(点击鼠标){if(方块有雷)then爆炸;Gameover;else{打开方块;显示该方块周围的雷数;}}扫雷开始游戏者点击鼠标爆炸Lose点击的方格有雷?打开该方块显示该方块周围的雷数YN3、关键代码介绍周围雷数:voidbuLei(){intcount=0;inti,j;while(count<10){i=(int)(Math.random(
7、)*9);j=(int)(Math.random()*9);if(shus[i][j]!=9){shus[i][j]=9;count++;}}for(i=0;i<9;i++){for(j=0;j<9;j++){ks[i][j]=0;}}}界面:classFrame1extendsJFrame{privatestaticfinallongserialVersionUID=8785804501379289427L;面板pan=new面板();JMenuBarcd=null;JMenudan;//菜单JMenuhelp;J
8、MenuItemkaishi;//菜单项JMenuItemchuji;JMenuItemzhongji;JMenuItemgaoji;JMenuItemzidingyi;JMenuItemguanyu;JMenuItemyingxiong;JMenuItemtuichu;Frame1(){cd=newJMenuBar();dan=newJMen
此文档下载收益归作者所有