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