Java课程设计——象棋(201521123042 姚佳希)
1. 团队课程设计博客链接
2 个人负责模块或任务说明
- ChessBoard类创建棋盘及界面。
- ChessPoint类创建棋盘格点及界面。
- ChessPiece类创建棋子及界面。
- 和小伙伴一起设计的界面。
3自己的代码提交记录截图

4.自己负责模块或任务详细说明
- ChessPiece类创建棋子
(1)属性:该类中包含对象包括棋子类型(红方黑方),棋子名称,棋子颜色。
(2)功能:paint(Graphics g)方法画棋子(棋子大小颜色以及字体)。类中包含多种方法可获取棋子信息(大小,类别)等。- ChessBoard类创建棋盘
(1)关键属性:棋子、棋点、游戏规则、记录走棋
(2)包含方法:首先利用ChessBoard()方法构造棋盘,输入参数即可确定长和宽,以及棋格的长宽。其次利用设计棋子类似的方法画出棋盘布局。最后加入鼠标操作的方法(点击、移动、释放等),实现下棋过程中移动棋子的功能。
(3)总结功能:创建棋盘,玩家可以用鼠标控制象棋的移动。棋盘的游戏规则属性来限定不同类型棋子的移动位置(例如马走日象走田) ,违反规则棋子将返回原来的位置。- ChessPoint类创建棋格点
(1)属性:棋子坐标、判断是否有棋子的对象
(2)主要功能:ChessPoint()方法构造棋格点并将棋子放入棋盘中,isPiece()功能判断是否有棋子,reMovePiece()方法负责吃棋子的时候,被吃棋子的移除。
5课程设计感想
- 上面写的三个类的逻辑关系:Chess主类->Chessboard->ChessPoint、ChessPiece。每个类之间的关系要分清楚,否则会一团糟
- 棋盘是最难的部分,需要设置棋格点来判断该位置是否有棋子,从而完成走棋等步骤。
- 很多东西不懂都是上网百度和求助大佬的,还有很多功能缺陷待完善。
Java课程设计——象棋(201521123042 姚佳希)的更多相关文章
- Java课程设计—象棋
1. 团队名称.团队成员介绍 团队名称:WY 团队成员: 吴慧婷[组长] 201521123094 网络1514 姚佳希 201521123042 网络1512 2 项目git地址 Java课程设计 ...
- java(课程设计之记事本界面部分代码公布)
代码:涉及记事本的一些界面......!! /* *java课程设计之记事本(coder @Gxjun) * 编写一个记事本程序 * 要求: * 用图形用户界面实现. * 能实现编辑.保存.另存为.查 ...
- java课程设计(计算器)
JAVA课程 设 计 报 告 1206401-18 瞿杰 一.设计时间 2013年6月 24日-----6月28日 二.设计地点 湖南城市学院实验楼计算机506机房 三.设计目的 1.巩固学习VB ...
- Java课程设计——博客作业教学数据分析系统(201521123084 林正晟)
#课程设计--博客作业教学数据分析系统(201521123084 林正晟) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 学生登陆界面的前端实现和与数据库的连接 学生 ...
- Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)
Java课程设计--博客作业教学数据分析系统(201521123082 黄华林) 一.团队课程设计博客链接 博客作业教学数据分析系统(From:网络五条狗) 二.个人负责模块或任务说明 1.网络爬虫 ...
- java课程设计--We Talk(201521123061)
java课程设计--We Talk(201521123061) 团队博客链接:http://www.cnblogs.com/slickghost/ 数据库 一.通过Dao模式建立与数据库的连接 1.数 ...
- Java 课程设计 "Give it up"小游戏(团队)
JAVA课程设计 "永不言弃"小游戏(From :Niverse) 通过Swing技术创建游戏的登陆注册界面,使用mySQL数据库技术完成用户的各项信息保存和游戏完成后的成绩保存. ...
- Java课程设计----仿Windows标准型计算器
JAVA课程设计 仿Windows标准型计算器(By Yanboooooooo) 一.团队介绍: 连燕波[组长]:网络1513学生. 张文博[组员]:网络1513学生. 二.项目git地址 码云项目地 ...
- Java课程设计——猜数游戏(201521123111 陈伟泽)
Java课程设计--猜数游戏(201521123111 陈伟泽) 1.团队课程设计博客链接 博客作业--猜数游戏 2.个人负责模块或任务说明 Answer:一些基础界面的构造,排行榜的构造,用文件录入 ...
随机推荐
- PHP魔术方法
魔术方法:两个下划线开头的格式. PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, ...
- centos下安装jenkins
To use this repository, run the following command: sudo wget -O /etc/yum.repos.d/jenkins.repo https: ...
- 【Win10】zip安装MySQL
1. mysqld初始化时my.ini的第二个默认位置是%windir%/my.ini rem 1.查看此变量对应的目录,在此目录下编辑 my.ini,mysqld会自动找到 echo %WINDIR ...
- Mybatis映射原理,动态SQL,log4j
1.理清mybatis中的#和$之间的区别? #{ }:表示一个预处理参数,参数类型不定,是根据传入的参数类型来设定的. 类似于JDBC中的? 特例使用,模糊查询:(针对oracle): and us ...
- 使用TenforFlow 搭建BP神经网络拟合二次函数
使用简单BP神经网络拟合二次函数 当拥有两层神经元时候,拟合程度明显比一层好 并出现如下警告: C:\Program Files\Python36\lib\site-packages\matplotl ...
- WeQuant交易策略—网格交易
网格交易策略(Grid Trading) 策略介绍 网格策略本质上是一种低吸高抛的策略.标的物价格越低,吸纳的头寸越多:标的物价格越高,卖出的头寸越多.网格策略巧妙地借鉴了日常生活中渔翁撒网扑鱼的思路 ...
- Ubuntu 安装和使用 Supervisor(进程管理)
服务器版本 Ubuntu 16.04 LTS. Supervisor 是一个用 Python 写的进程管理工具,可以很方便的对进程进行启动.停止.重启等操作. 安装命令: $ apt-get inst ...
- 记录-新建一个web应用的过程与曲折
第一步/ 打开eclipse,菜单栏下,File–New–Other-,打开后找到web–Dynamic Web Project,然后单击Next. 解释一下,Dynamic ,动态的,变化的,Dyn ...
- summernote使用心得
今日因项目需要所以使用了很有名气的富文本编辑器summernote,分享使用方法如下!填了一点坑,提供给需要的朋友借鉴! 直接转入我的前端网 地址: http://www.qdfuns.com/not ...
- jsp页面附件上传暂存的处理
有没有遇到页面是新建一个新对象,对象里面需要上传附件,但是只有当对象保存时才将附件一同上传到数据库的情况? 这种情况的处理可以参考狐狸的思路: @jsp页面创建一个botton bn,该button的 ...
