魔板游戏JAVA课程设计报告.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《魔板游戏JAVA课程设计报告.pdf》由会员分享,可在线阅读,更多相关《魔板游戏JAVA课程设计报告.pdf(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1目录目录1 设计目的-22 总体设计-23 关键技术- 33.1 系统的功能模块划分.33.1.1 PUZZLEFRAME.JAVA 类模块.33.1.2 PUZZLEPAD.JAVA 类模块.43.1.3 SQUAREPOINT.JAVA 类模块.44程序流程-55 主要源代码-75.1PUZZLEFRAME 模块源程序.75.2 PUZZLEPAD 模块源程序.105.3 SQUAREPOINT 类模块源程序.176 运行结果及结论-196.1 测试方案.196.2 运行结果.196. 3 小结.207.参考文献-2121 1 设设计计目目的的本次课程设计是通过 Java 语言编制一个魔
2、板游戏,它是一款经典的智力游戏。而 Java语言是当今较为流行的网络编程语言,它具有面向对象、跨平台、分布应用等特点。这次课程设计,还有利于加深对 Java 课程的进一步了解,也可以巩固所学 Java 语言基本知识,增进Java 语言编辑基本功,掌握 JDK、Editplus、Eclipse、JCreator 等开发工具的运用,拓宽常用类库的应用。使学生通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌握 Java 语言的编程思想及面向对象程序设计的方法。利用所学高级语言的语法特性,结合数据结构算法、网络知识、文件处理和数据库等知识完成综合题目的设计和代码实现,并培养锻炼分析程序、
3、撰写报告等能力。2 2 总体设计总体设计在设计魔板游戏时, 要编写 7 个 Java 源文件: PuzzleGame.java、 PuzzlePad.java、 Point.java、Block.java、HandleImage.java、VerifySuccess.java 和 HandleMove.java。魔板游戏除了需要编写的上述 7 个 Java 源文件所给出的类外,还需要 Java 系统提供的一些重要的类,如 JMenuItem、JButton 和 JRadioButton 等类。魔板游戏所用到的一些重要的类以及之间的组合关系如图 1 所示。PuzzleGameJMenuPuzzl
4、ePadJRadioButtonJButtonPointBlockHandleMoveImageHandleImageVerifySuccess图图 2-12-1 程序模块程序模块33 3 关键技术关键技术3.13.1 系统的功能模块划分系统的功能模块划分在设计魔板游戏时,需要编写 3 个 java 源文件:PuzzleFrame.java、PuzzlePad.java、SquarePoint.java。魔板游戏除了需要编写的上述 3 个 Java 源文件所给出的类外, 还需要 Java 系统提供的一些重要的类,如 JMenuItem、JButton 和 JRadioButton 等类。3.1
5、.13.1.1 PuzzleFrame.javaPuzzleFrame.java 类模块类模块PuzzleFrame 类负责创建魔板游戏的主窗口,该类含有 main 方法,程序从该类开始。PuzzleFrame 类的成员变量中有 4 种重要类型的对象:PuzzlePad、JmenuItem、JRadioButton和 JButton。PuzzleFrame 类的主要成员的作用将在后面的详细设计中阐述,PuzzleFrame 类主要成员变量(属性)和主要方法如表 3-1、3-2 所示。成员变量描述变量类型名称魔板开始游戏的按钮选择玩法PuzzlePadJbuttonJradioButtonPuz
6、zlePad开始数字玩法,图像玩法表表 3-13-1 PuzzleFrame.jaPuzzleFrame.javava 主要成员变量(属性)主要成员变量(属性)名称功能备注PuzzleFrameactionPerformedmain创建程序主窗口处理 ActionEvent 事件程序开始运行的方法构造方法接口方法表表 3-23-2 PuzzleFrame.javaPuzzleFrame.java 主主要方法要方法43.1.23.1.2 PuzzlePad.javaPuzzlePad.java 类模块类模块PuzzlePad 类创建的对象是 PuzzleFrame 类最重要的成员之一,代表“魔板
7、” 。该类的成员变量中有 5 种重要类型的对象:Point、Block 和 Image。PuzzlePad 类类主要成员变量(属性)和主要方法如表 3-3、3-4 所示。描述变量类型名称魔板中的行数和列数魔板中方块的宽和高魔板中二维点数组魔板中而为方块数组模板可能用到的图像intintSquarePointJButtonImagerows,columswidth,heightpointblockimage表表 3-33-3 PuzzlePadPuzzlePad.jav.java a 主要成员变量(属性)主要成员变量(属性)名称功能备注PuzzlePad随机排列数字随机排列图像paintComp
8、onentactionPerformed创建魔板对象随机排列魔板中方块上的数字随机排列魔板中方块上的图像绘制图像处理 ActionEvent 事件构造方法接口方法表表 3-43-4 PuzzlePadPuzzlePad.java.java 主要方法主要方法3.1.33.1.3 SquarePoint.javaSquarePoint.java 类模块类模块SquarePoint 类负责创建确定位置的对象,使用 Point 对象可以确定 Block 对象在PuzzlePad 对象中的位置,即确定“方块”在“魔板”中的位置。SquarePoint.java 类主要成员变量(属性)和主要方法如表 3-
9、5、3-6 所示。描述变量类型名称判断点上是否有方块点上的方块对象booleanJButton有方块block表表 3-53-5 SquarePointSquarePoint.java.java 主要成员变量(属性)主要成员变量(属性)5名称功能备注SquarePointget 有方块set 有方块setBlockgetBlock创建“点”对象判断点上是否有方块设置点上是否有方块在点上放置方块获取点上的方块构造方法表表 3-63-6 SquarePointSquarePoint.java.java 主要方法主要方法4 4程序流程程序流程根据对模板游戏的功能分析,设计得到魔板游戏总流程,如图 4
10、-1 所示:6图图 4-14-1 系统流程图系统流程图流程解释:程序分为两种玩法,数字玩法和图片玩法,又分为初级和高级两种模式,进入游戏选择游戏难度,后选择玩法,数字或图片玩法,系统将各切片顺序打乱,移动切片,判断顺序是否正确,正确游戏结束,不正确继续移动,程序结束。75 5 主要源代码主要源代码5.1PuzzleFrame5.1PuzzleFrame 模块源程序模块源程序import java.awt.*;import java.awt.event.*;import javax.swing.*;public class PuzzleFrame extends JFrame implement
11、s ActionListenerPuzzlePad puzzlePad;JButton 开始;JMenuBar bar;JMenu fileMenu;JMenuItem 初级,高级;JRadioButton 数字玩法,图像玩法;ButtonGroup group=null;Container con=null;public PuzzleFrame()bar=new JMenuBar();fileMenu=new JMenu(魔板游戏);初级=new JMenuItem(初级);高级=new JMenuItem(高级);fileMenu.add(初级);fileMenu.add(高级);bar.
12、add(fileMenu);setJMenuBar(bar);初级.addActionListener(this);高级.addActionListener(this);8开始=new JButton(开始玩);开始.addActionListener(this);group=new ButtonGroup();数字玩法=new JRadioButton(数字玩法,true);图像玩法=new JRadioButton(图像玩法,false);group.add(数字玩法);group.add(图像玩法);puzzlePad=new PuzzlePad(3,3,50,50);con=getCo
13、ntentPane();con.add(puzzlePad,BorderLayout.CENTER);JPanel pNorth=new JPanel();pNorth.add(数字玩法);pNorth.add(图像玩法);pNorth.add(开始);con.add(pNorth,BorderLayout.NORTH);con.validate();addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e)System.exit(0););setVisible(true);setBounds(1
14、00,50,440,360);validate();public void actionPerformed(ActionEvent e) if(e.getSource()=开始)if(数字玩法.isSelected()9puzzlePad.随机排列数字();else if(图像玩法.isSelected()puzzlePad.随机排列图像();else if(e.getSource()=初级)con.remove(puzzlePad);puzzlePad=new PuzzlePad(3,3,50,50);con.add(puzzlePad,BorderLayout.CENTER);con.va
15、lidate();this.validate();else if(e.getSource()=高级)con.remove(puzzlePad);puzzlePad=new PuzzlePad(4,4,50,50);con.add(puzzlePad,BorderLayout.CENTER);con.validate();this.validate();publicstatic void main(String args)new PuzzleFrame();105.25.2 PuzzlePadPuzzlePad 模块源程序模块源程序import java.awt.*;import java.aw
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 游戏 JAVA 课程设计 报告
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内