java课程设计报告--hannoi塔

java课程设计报告--hannoi塔

ID:25612313

大小:948.68 KB

页数:43页

时间:2018-11-21

java课程设计报告--hannoi塔_第1页
java课程设计报告--hannoi塔_第2页
java课程设计报告--hannoi塔_第3页
java课程设计报告--hannoi塔_第4页
java课程设计报告--hannoi塔_第5页
资源描述:

《java课程设计报告--hannoi塔》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、课程设计报告课程名称Java程序设计课题名称Hannoi塔专业计算机科学与技术班级学号姓名指导教师李远辉2013年6月27日湖南工程学院课程设计任务书课程名称Java程序设计课题Hannoi塔专业班级学生姓名学号指导老师李远辉审批李远辉任务书下达日期2013年6月20日任务完成日期2013年6月27日目录1.设计要求……………………………………………………………11.1界面要求…………………………………………………………11.2功能要求…………………………………………………………12.总体设计…………………………………………………………22.1总体概述…………

2、………………………………………………22.2主要类功能设计…………………………………………………33.详细设计……………………………………………………………53.1HannoiWindow类………………………………………………53.2Tower类…………………………………………………………53.3HandleMouse类…………………………………………………63.4AutoMoveDisc类…………………………………………………73.5TimeCount类……………………………………………………84.调试与结果分析……………………………………………………94.

3、1初级游戏…………………………………………………………94.2游戏界面属性设置………………………………………………104.3游戏外观设置……………………………………………………104.4自动移动演示……………………………………………………105.设计总结与心得体会………………………………………………12附录……………………………………………………………………131参考书………………………………………………………………132源代码………………………………………………………………131设计要求1.1界面要求用户界面为GUI界面,其分为菜单栏以及游戏区两个部分。游戏

4、区中分布有三座Hannoi塔,其名字分别为A、B、C。初始状态下A座有三个大小不等的盘子,其按照从大到小的顺序依次摆放在A座上。1.2功能要求1.2.1游戏规则用户用鼠标选中盘子,然后通过拖动鼠标来移动盘子、释放鼠标来放置该盘子。其中主要的规则就是:(1)移动盘子时,盘子上方必须无盘子(2)放置盘子时,其位置必须在塔点处,而且盘子必须比下方盘子小(3)游戏结束的条件是:所有的盘子均从A座移到B或C座1.2.2游戏设置功能用户可以通过游戏-》选项来设置游戏的一些基本的属性,如是否播放音乐、难度、盘子大小等等1.2.3游戏帮助功能用户可以通过菜单栏中的帮助能过初步

5、了解游戏的相关信息,以及如何操作。其中必须实现游戏的自动完成功能以指导用户如何操作。1.2.4游戏外观设置功能用户可以通过游戏-》外观可以设置游戏的背景颜色以及盘子的颜色402总体设计2.1总体概述在设计Hannoi塔时,需要编写9个Java源文件:AutoMoveDisc.java、Disc.java、GameMusic.java、GameSettingS.java、HandleMouse.java、HannoiWindow.java、TimeCount.java、Tower.java、TowerPoint.java。Hannoi塔除了要编写的10个Java

6、源文件所给出的类外,还需要Java系统提供的一些重要的类,如JMenuBar、JMenu、JMenuItem和JButton。Hannnoi塔所用的一些重要的类以及之间的组合关系如图2.1所示:HannoiWindowTowerJMenuItemJMenuBarGameSettingSJMenuGameMusicAutoMoveDiscHandleMouseDiscTowerPointTimeCount图2.1类之间的组合关系402.2主要类功能设计2.2.1HannoiWindow.javaHannoiWindows类主要负责创建Hannoi塔的主窗口,该类

7、包含main()方法,Hannoi塔从此类开始执行。HannoiWindows类的成员变量有五种重要类型对象以及一个char型数组。五种重要类型对象为:Tower、JMenuBar、JMenu、JMenuItem和GameSettings对象。其效果图2.2如下:图2.2主界面2.2.2Tower.javaTower.java类是javax.swing.JPanel的子类,创建的容器被添HannoiWindow窗体的中心。Tower类主要的功能是设置游戏区的所有组件的位置等相关信息以及注册其中的监听器。402.2.3HandleMouse.javaHandle

8、Mouse类主要负责的是鼠标移动游戏区

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。