魔板游戏课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
J a v a与面向对象技术
课程设计报告
( 2011 -- 2012 年度第2 学期)
魔板游戏
专业电子信息工程
学生姓名吴才奇
班级电信四班
学号1103030429
指导教师周越
完成日期2012年7月14日
目录
目录
目录 (2)
1概述 (1)
1.1 课程设计目的 (1)
课程设计任务书 (1)
2需求分析 (2)
2.1 设计目标 (2)
2.2 主体功能 (2)
2.3 开发环境 (2)
3概要设计 (2)
3.1 系统的功能模块划分 (2)
3.1.1PuzzleGame.java类模块 (3)
3.1.4 Point.java类模块 (3)
3.2 系统流程图 (4)
4详细设计 (6)
5测试 (7)
5.1 测试方案 (7)
5.2 测试结果 (7)
6小结 (8)
参考文献 (10)
附录 (11)
附录1源程序清单 (11)
附录1.1PuzzleGame模块源程序 (11)
附录1.2PuzzlePad模块源程序 (13)
附录1.3Block类模块源程序 (16)
附录1.4Point类模块源程序 (17)
附录1.5HandleImage类模块源程序 (18)
附录1.6HandleMove类模块源程序 (18)
附录1.7VertfySuccess类模块源程序 (20)
附录1.8Sound类模块源程序 (21)
附录1.8Sound类模块源程序 (21)
Java与面向对象技术课程设计报告(2012)
魔板游戏
1 概述
1.1 课程设计目的
利用所学高级语言的语法特性,结合数据结构算法、网络知识、文件处理和数据库等知识
完成综合题目的设计和代码实现,并培养锻炼分析程序、撰写报告等能力。
1.2课程设计任务书
学院信息学院专业电子信息工程
学生姓名吴才奇班级学号1103030429
课程设计题目基于Java的魔板游戏软件设计
实践教学要求与任务:
采用java技术设计魔板游戏软件,设计要求如下:
(1)魔板由3*3或4*4个格子组成。对于3*3魔板,在前8个格子里随机放置8个编号1~8的方块,最后一个格子是未放置方块的空格子;对于4*4的魔板,在前15个格子里随机放置
15个编号1~15的方块,最后一个格子是未放置方块的空格子。
(2)用鼠标单击任何与格子水平或垂直相邻的方块就可以把该方块移入空格子,而当前方块移动之前所在的格子成为空格子。通过不断地移动方块可以将方块一行一行地按数顺序排好。(3)魔板游戏也可以使用图像来代替数字。例如,对于3*3的魔板,将一幅图像分成3*3个小图像,除去最后一幅小图像(图像的右下角),将其余的各幅小图像打乱顺序后放在魔板的
方块上,最终目标是通过移动方块回复原始图像(不包括图像的右下角)。
(4)当用户按要求排列好方块后,程序弹出对话框,提示用户成功的消息。
(5)模板游戏分为两个级别,用户可以通过界面上提供的菜单来选择“初级”或“高级”两个级别。对于“初级”级别,魔板由3*3个格子组成;对于“高级”级别,魔板由4*4个格
子组成。
“模板游戏”提供一幅默认图像,用户可以使用该图像来玩魔板游戏。用户也可以
使界面提供的菜单选择一幅新图像,然后使用这个新的图像来玩魔板游戏。
工作计划与进度安排:
第18周:布置课程设计任务,查阅资料,分组设计,程序调试。
第19周:程序调试,编写课程设计报告,验收,答辩。
指导教师:
2012年月日专业负责人:
2012年月日
学院教学副院长:
2012年月日
魔板游戏
2 需求分析
2.1 设计目标
熟悉Java语言和NetBeansIDE6.8等开发工具。
2.2 主体功能
这个程序定义了一些组件,工具栏按钮,文本区和菜单。魔板游戏程序设计通过PuzzleGame.java、PuzzlePad.java、Point.java、Block.java、HandleImage.java、VerifySuccsee.java和HandleMove.java7个类来实现魔板游戏的整体功能。
2.3 开发环境
操作系统:Microsoft Windows 98/2000/XP
硬件要求:处理器:2.6 GHz Intel Pentium IV 或具有同等性能的处理器
内存:2 GB
硬盘空间:1 GB 可用硬盘空间
开发工具:NetBeans IDE 6.8
3 概要设计
3.1 系统的功能模块划分
在设计魔板游戏时,需要编写7个java源文件:PuzzleGame.java、PuzzlePad.java、Point.java、Block.java、HandleImage.java、VerifySuccsee.java和HandleMove.java。
魔板游戏除了需要编写的上述7个Java源文件所给出的类外,还需要Java系统提供的一些重要的类,如JMenuItem、JButton和JRadioButton等类。魔板游戏所用到的一些重要的类以及之间的组合关系如图1.1所示。
Java 与面向对象技术课程设计报告(2012)
图1-1 类之间的组合关系
3.1.1PuzzleGame.java 类模块
PuzzleGame 类负责创建魔板游戏的主窗口,该类含有main 方法,程序从该类开始。PuzzleGame 类的成员变量中有4种重要类型的对象:PuzzlePad 、JMenu 、JRadioButton 和JButton 。PuzzleGame 类的主要成员的作用将在后面的详细设计中阐述,PuzzleGame 类创建的窗口以及其中的主要成员对象如图6.3所示。
3.1.2 PuzzlePad.java 类模块
PuzzlePad 类创建的对象是PuzzleGame 类最重要的成员之一,代表“魔板”。该类的成员变量中有5种重要类型的对象:Point 、Block 、HandleMove 、HandleImage 和Image 。PuzzlePad 类的主要成员的作用将在后面的详细设计中阐述。
3.1.3 Block.java 类模块
Block 类是JTextField 的一个子类,创建的对象是PuzzlePad 类的重要成员之一,用来表示“魔板”中的“方块”。
3.1.4 Point.java 类模块
Point 类负责创建确定位置的对象,使用Point 对象可以确定Block 对象在PuzzlePad 对象中的位置,即确定“方块”在“魔板”中的位置。
3.1.5 HandleImage.java 类模块
HandImage 类所创建的对象负责处理鼠标事件。
3.1.6 HandleMove.java 类模块
HandMove 类所创建的对象负责处理鼠标事件。
3.1.7 VerifySuccess.java 类模块
VerifySuccess 类所创建的对象负责验证用户是否按要求成功排列魔板中的方块。
PuzzleGame
JMenu PuzzlePad JRadioButton JButton
P o i n t
B l o c k
H a n d l e M o v e
I m a g e
H a n d l e I m a g e
V e r i f y S u c c e s s