java课程设计--hannoi汉诺塔游戏.doc

  1. 1、本文档共39页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java课程设计--hannoi汉诺塔游戏

HUBEI NORMAL UNIVERSITY Java程序设计 论文题目 Hannoi塔游戏 学 生 指导教师 所在院系 专业名称 完成时间 摘 要 《JAVA语言实用教程》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。本课程的程序设计专题实际是计算机相关专业学生学习完《JAVA语言实用教程》课程后,进行的一次全面的综合训练,JAVA语言实用教程的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。 目 录 一、课程设计任务及要求 4 1、课程设计任务 4 2、设计要求 4 二、需求分析 5 1、系统需求分析 5 2、系统概述 5 3、系统运行环境 6 三、设计思路 6 概要设计 7 四、详细设计 7 package Hannoi; 7 HannoiWindow类 7 AutoMoveDisc类 15 Disc类 21 HandleMouse类 22 Tower类 27 TowerPoint 类 31 五、运行调试与分析讨论 33 六、设计体会与小结 36 1.设计体会 36 2.小结 36 参考文献 37 致谢 37 一、课程设计任务及要求 设计GUI界面的Hannoi塔游戏,用户可以通过拖动鼠标移动各个塔上的盘子,程序也可以自动演示盘子的移动过程。 2、设计要求 (1)有三个表示塔的对象,分别命名为A、B和C。A塔上有若干个盘子,盘子的大小不等,并按着大小顺序依次摆放在A塔上,大盘在下,小盘在上。用户可以用鼠标拖动盘子,把A 塔上的盘子全部移动到另外两个塔中的任何一个塔上。要求每次只能移动一个盘子,在任何时候不允许大盘压在小盘的上面。 (2)用户也可以选择让程序自动演示。选择自动演示后,程序将以动画形式演示把A塔上的盘子全部移到C塔的过程,并将移动过程以文本形式显示在一个文本区中。 (3)可以由用户自己设置盘子数量和盘子大小。 (4)可以改变盘子的颜色、背景颜色以及背景音乐。 (5)游戏分为初、中、高三个等级。 (6)可以记录游戏时间并且设有从新开始按钮。 二、需求分析 1、系统需求分析 使用java面向对象语言设计汉诺塔游戏,此游戏要求: 1)界面要求: (1)尽量使用图形界面实现,要符合日常软件使用规范来设计菜单和界面。 (2)如果无法实现图形界面,则在命令行方式下也需要提供菜单,方便用户操作(盘子可以自己规定)。 2)其他要求:可以保存自己的自动演示记录 3)每次移动一子,小的只能叠在大的上面 4)把所有碟子从A全部移到C上 (1)标识符命名遵循Windows命名规范。 (2)能够注意各种异常处理,注重提高程序运行效率。 2、系统概述有三根A,B,C。A杆上有若干子 3、系统运行环境 任何具有jre运行环境的设计思路HannoiWindow、AutoMoveDisc、Disc、HandleMouse、Tower、TowerPoint)所给出的类外,还需要java系统提供的一些重要的类,如JButton,JCheckBox等。汉诺塔中有三个座,名字分别为A,B,C。刚开始的时候A塔上有3个大小不等的盘子,这些盘子从座底到座顶按着大小顺序依次摆放在A座上。用户可以用鼠标选中盘子,然后通过拖动鼠标来移动盘子。释放鼠标来放置该盘子。程序要求用户在移动盘子的过程中,不允许把大盘子放置在小盘子的上面,用户最终要完成的是把A座上的全部盘子移动到B座或C座上。用户可以通过Hannoi塔界面提供的改变盘子数目功能来改变盘子的数目,同时可以改变盘子的大小以及改变盘子和界面的背景颜色,而且还可以选择控制背景音乐的播放。用户可以通过单击Hannoi塔界面上提供的按钮,让程序自动完成把A座上的盘子全部移动到C座上。用户在移动盘子的过程中,可以随时单击Hannoi塔界面上提供的按钮,重新开始。 概要设计package Hannoi; HannoiWindow类/* HannoiWindow类 * 该类主要功能是设置主界面的布局、相关按钮和监听事件 * */ import java.applet.Applet; import java.applet.AudioClip; import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.io.File; import .MalformedURLException; import .URL; import javax.swing.JOptionPane; public c

文档评论(0)

xjj2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档