您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > C/C++资料 > Java五子棋设计报告
1南京晓庄学院《JAVA程序设计》课程设计报告题目:五子棋游戏的设计与实现姓名:陶野学号:12130818班级:12软件工程转本2班指导教师:王峥完成时间7月1日成绩:信息工程学院2015年6月目录1引言..............................................................11.1系统开发背景.............................................................................................................21.1系统开发的目的和意义.............................................................................................31.2完成的主要工作.........................................................................................................42需求分析和总体设计................................................42.1需求分析与设计思路.................................................................................................52.1.1关键技术说明................................................................................................52.1.2需求分析........................................................................................................52.1.3系统设计方案与思路....................................................................................52.1.4系统目录结构说明........................................................................................52.2系统功能结构.............................................................................................................63详细设计..........................................................73.1系统模块实现.............................................................................................................94系统运行结果.....................................................105课程设计总结.....................................................12《Java程序设计》课程设计1五子棋游戏的设计与实现1引言五子棋相传起源于四千多年前的尧帝时期,比围棋的历史还要悠久,可能早在“尧造围棋”之前,民间就已有五子棋游戏。有关早期五子棋的文史资料与围棋有相似之处,因为古代五子棋的棋具与围棋是完全相同的。在上古的神话传说中有“女娲造人,伏羲做棋”一说,《增山海经》中记载:“休舆之山有石焉,名曰帝台之棋,五色而文状鹑卵。”李善注引三国魏邯郸淳《艺经》中曰:“棋局,纵横各十七道,合二百八十九道,白黑棋子,各一百五十枚”。这段虽没明讲是何种棋类,但至少知道远古就以漂亮的石头为棋子。因而规则简单的五子棋也可能出自当时,并是用石子作棋子。亦有传说,五子棋最初流行于少数民族地区,以后渐渐演变成围棋并在炎黄子孙后代中遍及开来。1.1系统开发背景在计算机逐步渗入社会生活各个层面的今天,计算机已经成为了人们日常生活中的一部分,越来越多的人使用计算机办公、娱乐等等。在这其中,系统自带的小游戏也占据了相当重要的地位,与那些网络游戏和3D游戏相比,它有编写简单容易上手等特点,非常适合人们在完成工作的时候适当的娱乐要求。这些小游戏大都是以益智和娱乐为目的,不仅给紧张工作的人们以放松,还可以让人们的大脑得到开发。1.2完成的主要工作设计一个15╳15围棋棋盘,由两玩家交替进行对战,并可以实现以下功能:1.选择黑子先下2.设置双方下棋总共时长3.刷新重新开始4.悔棋5.认输6.退出提示实现一个简单的多用户五子棋的游戏程序,包括如下两个界面(1)选择对弈桌(执黑、执白)。(2)在游戏界面,有开始,退出(游戏未结束、点退出自动判负);《Java程序设计》课程设计21.3需求分析与设计思路1、用户需求调查分析2、构思代码模块3、总体设计4、详细设计5、代码编写《Java程序设计》课程设计32需求分析和总体设计2.1需求分析与设计思路此系统为智力游戏,采用JAVA的MVC模式,根据不同功能划分不同模块,该五子棋游戏功能虽然简单,然是实现了人机对战,所以从这个角度来说,此款游戏能准确的计算棋局。虽然系统不大,但是可以实现基本的五子棋功能,以及悔棋。2.1.2需求分析五子棋,是一种两人对弈的纯策略型棋类游戏,亦称“串珠”、“连五子”;是中国民间非常熟知的一个古老棋种。相传,它起源于四千多年前的尧帝时期,比围棋的历史还要悠久。亦有传说,五子棋最初流行于少数民族地区,以后渐渐演变成围棋并在炎黄子孙后代中遍及开来。五子棋发展于日本,流行于欧美。容易上手,老少皆宜,而且趣味横生,引人入胜;不仅能增强思维能力,提高智力,而且富含哲理,有助于修身养性。2.1.3设计方案与思路传统五子棋的棋具与围棋相同,棋子分为黑白两色,棋盘为15X15,棋子放置于棋盘线交叉点上。两人对局,各执一色,轮流下一子,先将横、竖或斜线的5个或5个以上同色棋子连成不间断的一排者为胜。因为传统五子棋在落子后不能移动或拿掉,所以也可以用纸和笔来进行游戏。2.1.4系统目录结构说明对系统包结构、文件结构列表说明,如表2-1、2-2所示。表2-1主页面表包名作用src容纳所有文件表2-2文件表文件名作用Game.javaGameFrame.javaCheerup.javaPaintPanel.java运行文件《Java程序设计》课程设计42.2系统功能结构《Java程序设计》课程设计53.1详细设计3.1.1系统模块实现按钮事件悔棋事件classBackimplementsActionListener认输事件classFailextendsJFrameimplementsActionListener关于事件classAboutextendsJFrameimplementsActionListener设置事件classSetimplementsActionListener退出事件classExitextendsJFrameimplementsActionListener主要代码块:publicclassMyChessFrameextendsJFrameimplementsMouseListener,Runnable{//Chess类用于保存棋子信息(坐标,颜色,落子时间,落子时是否人为归零时间)privateclassChess{inti=0,j=0,color=0,time=0;booleanguiLingSave=false;}//save集合保存Chess,用于画棋子和悔棋ArrayListChesssave=newArrayListChess();//棋子的坐标intx,y;//标识当前游戏是否可以继续booleancanPlay=true;//标识是否是人为归零时间booleanguiLing=true;//背景图片BufferedImagebgImage=null;//右上角显示游戏信息区域的背景图片BufferedImagemsgImage=null;//保存之前下过的全部棋子的坐标//其中数据内容0:表示这个点并没有棋子,1:表示这个点是黑子,2:表示这个点是白子Chess[][]allChess=newChess[16][16];《Java程序设计》课程设计6//ListallChessChess=newArrayListallChess();//标识当前应该黑棋还是白棋下下一步booleanisBlack=true;//保存显示的提示信息Stringmessage=黑方先行;//保存最多拥有多少时间(秒)staticintmaxTime=0;//做倒计时的线程类Threadt=newThread(this);//Threadmusic=newThread(newMusic());//保存黑方与白方的剩余时间staticintblackTime=0;staticintwhiteTime=0;//保存双方剩余时间的显示信息StringblackMessage=无限制;StringwhiteMessage=无限制;4、系统运行结果《Java程序设计》课程设计7a.进入游戏界面游戏开始的界面有六个选择项,用户可以选择相应的设置b.选择角色,开始下棋《Java程序设计》课程设计8首先达到五个棋子连在一块的赢了,并在弹窗显示谁赢了!c.下完后,重新开始《Java程序设计》课程设计9下完一盘后游戏停止,点击重新开始,界面回到初始界面《Java程序设计》课程设计10d.悔棋选择悔棋后,相对应位置旗子撤销《Java程序设计》课程设计115、课程设计总结通过此次课程设计,将我本学期所学的JAVA知识得到巩固和应用,在设计的过程中我遇到了很到问题,不过在老师和同学们的帮助和自己的思考下还是很好的完成了。这此课程设计还让我懂得了写程序不能闭门造车,要努力拓宽知识面,开阔视野,拓展思维。它还让我学会了在网上查阅那些无限的资料。由于自己的分析设计和程序经验不足,该系统设计和实现过程中,还有许多没有完善的地方,比如用户界面设计不够美观,异常出错处理比较差等多方面问题,这些都有待进一步完善和提高。对于文中出现的不足和系统中出现的问题敬请老师指导。《Java程序设计》课程设计12参考文献1.吴其庆编著.Java程序设计实例教程.北京:冶金工业出版社2.柳西玲.许斌编著.Java语言应用开发基础.北京:清华大学出版社3.丁振凡Java语言实用教程:北京邮电大学出版社
本文标题:Java五子棋设计报告
链接地址:https://www.777doc.com/doc-2219250 .html