# 基于JAVA实现的五子棋游戏
# 一、题目分析与设计
所使用的开发环境:Eclipse
五子棋的娱乐性强、规则简单、易学、流行性广,普通人不需长时间专门训练即可自如行棋,因此极受大众喜欢。本次课设需制作一款简单的五子棋游戏,界面美观简洁,故需在绘制棋盘界面,绘制棋子等以简洁为主。功能方面实现简单的几个功能,输入棋子,开始游戏,悔棋,认输等。
- 技术可行性:使用windows操作系统,Java语言,Eclipse开发环境,开发界面简洁、功能简单的五子棋单机小游戏
- 经济可行性:开发成本低,只要有一台装有Eclipse软件的电脑,就可开发
- 操作可行性:操作上主要使用鼠标点击,凭借点击的位置坐标确定棋子落子位置,方便简单。使用前只要看明白游戏规则及其方法即可
**软件功能题目构架图**如下:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/521996e62e377604ea8c0f0127637b63.writebug)
**系统流程图**:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/92bd787d8fc363a2bda8ee3c99d19fb5.writebug)
**界面设计过程**
![](http://www.writebug.com/myres/static/uploads/2021/10/19/0c14521241a30213d8db88b1a4ad6518.writebug)
设计上的创意及组件的布局策略: 界面设计用到的是JFrame类。先对主程序框进行设计,再设计分程序框架,设计遵循简约至上的原则,背景图案,颜色搭配及按钮等设计的尽量简单,同时加入个人特色。
论述程序逻辑的实现,包括类的设计、对象的协作过程等,必要时加以各种图形和表格辅助论述。不得以粘贴代码的方式代替设计部分。
五子棋游戏程序Fivechess类包括主类main及实现自定义的FiveChessFrame类。FiveChessFrame类继承JFrame类同时实现MouseLinstener接口。而FiveChessFrame类包含的主要方法及功能如下表:
| 方法名称 | 功能 |
| ---------------------------------------- | -------------------- |
| public void paint(Graphics g) (画出图像) | 绘制游戏背景,棋盘背景,画出棋盘、棋子等 |
| repaint() (重写方法) | 重新绘制图形 |
| Public void mouseClicked(MouseEvent e) (处理发生单击的事件) | 实现开始、说明、悔棋、认输、退出功能按钮 |
| public void mousePressed(MouseEvent e) (鼠标点击事件) | 判断当前要下的棋子,判断游戏是否结束 |
| private boolean win() (返回布尔类型判断胜利与否) | 存放判断五子棋胜利的算法的方法 |
**程序逻辑实现的基本流程**:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/9721cefed7cb82715695b002fba41a23.writebug)
# 二、测试分析
**总体界面**:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/91f6ab07c964b8dc6b217801131b3784.writebug)
**各功能测试**:
绘制棋子功能测试:点击鼠标在相应位置出现棋子,游戏信息显示下一步下棋的那方,重复在同个位置放棋子时会有提示。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/f1fff1fe2b7788100ed3f5e1cb135ae9.writebug)
![](http://www.writebug.com/myres/static/uploads/2021/10/19/e06b77bbbe1e9fd692cc76b0e3e37213.writebug)
开始功能测试:点击开始按钮, 把棋盘清空,游戏信息的显示改回到开始位置,重新开始游戏。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/5f37cc1da795c016c916ef8486282a05.writebug)
![](http://www.writebug.com/myres/static/uploads/2021/10/19/7ea624132479ba67fe5327fe0e7140d9.writebug)
说明功能测试:显示游戏的使用方法及的作者的信息。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/dd919752869fb2a929e859757c8aa889.writebug)
悔棋功能测试:点击悔棋按钮,确认悔棋,则撤销最后一步下的棋子,(只能悔一步棋)。
测试前:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/1c3499934c626461c7b9177ce4becb37.writebug)
测试后:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/4026b02354abed41c053e2ffb4f2ac99.writebug)
![](http://www.writebug.com/myres/static/uploads/2021/10/19/f279404d696b0d05cce526e027ca233c.writebug)
继续悔棋:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/14f829be1f2f8557b28444ba8876dbdc.writebug)
认输功能测试:轮到下棋的那方点击认输按钮,确认认输,则该方认输,另一方获胜,游戏结束,继续下棋。
测试前:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/926479099362ebc364ea9acafdf11057.writebug)
测试后:
![](http://www.writebug.com/myres/static/uploads/2021/10/19/608f4f285e8a7b17aa23e17d282a0c92.writebug)
![](http://www.writebug.com/myres/static/uploads/2021/10/19/535495eeb26306e114eb4060907f0b13.writebug)
退出按钮测试:点击退出按钮,选择是否退出游戏,是则退出游戏,关闭游戏界面,否则返回游戏界面。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/81cec818800a8e32ab24351aa7097eb2.writebug)
平局功能测试:当棋盘的所有位置都被下完,而还未分出胜负,此时提示“游戏结束,双方未分出胜负! 若要继续游戏,请重新开始!”
![](http://www.writebug.com/myres/static/uploads/2021/10/19/7233e0f8010452f8b7533d2709880bbf.writebug)
游戏结束时继续点击页面的提示信息:游戏结束继续点击棋盘页面,会提示"游戏已经结束,如想继续,请重新开始游戏!";点击认输和悔棋按钮,则会提示不能执行该操作。
![](http://www.writebug.com/myres/static/uploads/2021/10/19/7cb20284d5dac0cc1decb5a0d0bfd94f.writebug)
神仙别闹
- 粉丝: 4253
- 资源: 7532
最新资源
- 【岗位说明】4S店保险专员岗位职责.docx
- 【岗位说明】出单员岗位职责.docx
- chromedriver-linux64_115.0.5767.0.zip
- chromedriver-linux64_115.0.5765.0.zip
- chromedriver-linux64_115.0.5769.0.zip
- chromedriver-linux64_115.0.5771.0.zip
- chromedriver-linux64_115.0.5770.0.zip
- chromedriver-linux64_115.0.5772.0.zip
- chromedriver-linux64_115.0.5773.4.zip
- chromedriver-linux64_115.0.5773.0.zip
- chromedriver-linux64_115.0.5785.0.zip
- chromedriver-linux64_115.0.5776.0.zip
- chromedriver-linux64_115.0.5777.0.zip
- chromedriver-linux64_115.0.5790.90.zip
- chromedriver-linux64_115.0.5790.56.zip
- chromedriver-linux64_115.0.5790.102.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈