中国象棋打谱系统-Java语言毕业设计(内附详细Java程序)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JAVA语言课程设计设计题目:中国象棋打谱系统

目录

JA V A语言课程设计

目录

1 设计 (1)

1.1 设计内容 (1)

1.2 设计要求 (1)

1.3 总体设计 (2)

2 具体设计 (3)

2.1运行效果和程序设计 (3)

2.2 主类Chess (5)

2.3对弈棋盘ChessBoard (9)

2.4 棋子ChesePiece (19)

2.5棋点ChessPoint (21)

2.6 走棋规则Rule (23)

2.7步骤MoveStep………………………………………….2

3.

2.8记录棋谱MakeChessManual…………………………..24.

2.9棋谱演示Demon (24)

3课程总结 (25)

1.1 设计内容

中国象棋打谱系统使用户能够将对弈过程保存成文件,并能够重新演示对弈过程,即复盘。

1.2 设计要求

1.中国象棋是双方在由9条和10条横线分割而成的棋盘对弈。竖线与横线的交叉点称做棋点,每个棋子都放置在棋点上,而不是方格中。河界将棋盘分为两个等分=份,没一边都有一个由9个点组成的区域“将”,“帅”,“士”只能在“九宫”内移动,并且“将”,“帅”,的每一步只可以水平或垂直移动一个棋点。

士:“士”只能在“九宫”内移动,并且每一步只可以沿对角线方向移动一个棋点。

象;一步必须沿对角线方向走两个棋点。但它既不能过河,也不能跳过或穿越障碍,即象征走的过程不能被“别眼”。

马:每一步只可以水平或垂直移动一个棋点。但它必须沿对角线方向,向左或向右移动,中国象棋的马不能跳过障碍,即在走的过程不能被“别腿”。

车:可以沿水平或垂直方向移动任意个无障碍的点。

炮:行走规则和车很类似,但它必须跳过一个棋子来吃掉对方的一个棋子。被跳过的棋子被称为桥或者屏风。

兵:过河前每步只能向前移动一个棋点。过河后,它便增加了向左右移动的能力。并不允许向后移动。

2.单击“中国象棋”菜单可以选择“制作棋谱”,“保存棋谱”和“演示棋谱”菜单项。

3.选择“制作棋谱”,将出现相应的棋盘,该棋盘可进行实战对弈,可以随时选择“保存棋谱”,将对弈过程保存成一个棋谱文件。选择“演示棋谱”将显示打开文件对话框供用户选择以保存的棋谱文件。选择棋谱文件后,将显示用来演示棋谱的棋盘,用户可以选择自动或者手动来演示对弈过程。

1.3 总体设计

中国象棋打谱系统共有8个Java源文件。重要之间的关系如下图;

图1.1 类之间的关系

Chess.Java

该Java文件生成的类负责创建程序的主窗口。该类含有main方法,程序从该类开始执行。

ChessBoard.java

该文件生成的类负责创建“对弈棋盘”,用户可以用鼠标拖动棋盘上的棋子,当松开鼠标是则将棋子放在棋点。该棋盘不允许用户将棋子拖放到非棋点上。棋盘上的rule对象负责判断走棋是否遵守了中国象棋的规则,例如“马”走日,“象”走田,“小卒”一去不回头等等。如果用户的走法不符合规则,棋子将被放回原处,重新走着。棋盘的MakeChessManual对象负责记录棋谱,当用户选择“保存棋谱”菜单项时,可以将当前棋谱保存成文件。另外,该棋盘还能进行悔棋,悔棋将不被记录到棋谱。

Chesspoint.Java

该文件生成的类负责创建棋点对象。棋点对象可以判断该棋点上是否有棋子,指定当前棋点上的棋子,获取当前棋点上的棋子,移动当前棋点上的棋子。ChessPiece.java

该文件生成的类负责创建棋子对象。并绘制棋子的外观。棋子对象可以获取本身的颜色,大小,名字,也可以设置和获取本身的类别,即红棋和黑棋。MakeChessManual,java

该文件生成的类负责创建记录棋谱的对象,该对象可以将棋谱记录到一个链接表中,并在一个文本区显示棋谱。当对弈者悔棋时,该对象将修改棋谱,并更新文本区域的信息。

Ruler.java

该文件生成的类负责创建“走棋规则”对象,该对象负责用户用户的走法是否符合规则。

Demon.java

该文件生成的类负责创建“棋谱演示”对象,该对象可以演示以保存的棋谱。MoveStep.java

该类创建的对象记录一个棋步。

2 具体设计

2.1运行效果和程序设计

1.将8个Java文件保存到一个文件夹中,例如C\chese。将8个Java文件分别编译生成相应的字节码(class)文件。然后用Java解释器运行主类:

C:\chess\java Chess

效果如图2.1、2.2所示。

图1

图2.11棋谱的制作

图2.12棋谱对弈和保存

2.可以使用jar.exe把一些文件夹压缩成JAR文件,来发布我们的应用程序。我们可以把本Java应用程序中涉及到的类压缩成一个JAR文件,例如:Chese.jar。

首先,用文本编辑器(例如Windows下的记事本)编写一个清单文件(Manifestfiles):

Manifest-Version:1.0

Main-Class:Chess

Created-By:1.2.2(Sun Microsystems Inc.)

例如,清单文件命名为moon.mf,保存到C:\Class。

然后,如下生成JAR文件:

c:\chess\jar cfm chess.jar moon.mf*.class

其中,参数c表示要生成一个新的JAR文件;f表示要生成的JAR文件的名字;m表示文件清单文件的名字。

现在就可以将Chess.jar拷贝到任何一个安装了java运行环境(版本号需高于1.2.2)的计算机上,只要用鼠标双击该文件就可以运行本java应用程序了。

另外创建一个帮助文件help.txt,内容如下:

相关文档
最新文档