电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Java课程设计走迷宫

41页
  • 卖家[上传人]:m****
  • 文档编号:479582511
  • 上传时间:2023-07-04
  • 文档格式:DOCX
  • 文档大小:1.13MB
  • / 41 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、Java 语 言 与 面 向 对 象 技 术课程设计报告( 2014 - 2015 年度第1 学期 )走迷宫10 / 31目 录21 概 述 11.1 课程设计目的 11.2 课程设计内容 12 系统需求分析 22.1 系统目标 22.2 主体功能 22.3 开发环境 33 系统概要设计 33.1 系统的功能模块划分 33.2 系统流程图 44 系统详细设计 64.1 系统的主界面设计 64.2 MAZEW 设计74.3 PERSONINMAZW 计84.4 WALLORROADS 计84.5 MAZEPOINT 设计94.6 SOUN购设计104.7 RECORD 设计105 测试 115.1 测试方案 115.2 测试结果 116 小结 1.6参考文献 1.7附录 1 源程序清单 1.8走迷宫的设计1 概 述1.1 课程设计目的1加深对 Java 语言与面向对象技术课程基础知识的理解,掌握 Java 语言 面向对象程序设计的开发方法和步骤;2进一步理解面向对象程序设计的思想和方法,利用Java 语言进行程序设计的能力;3课程设计将课本上的理论知识和实际应用相结合,锻炼学生发现问题、

      2、分析问题和解决问题的能力。加强学生研发、编写、调试程序的能力;4培养学生在项目开发中团队合作精神、创新意识及能力;5提高学生科技论文写作能力,规范完成课程设计报告。1.2 课程设计内容设计GUI界面的走迷宫游戏,游戏的目的是让走迷宫者从迷宫的入口处进从迷宫出口处出。具体内容如下:(1) 程序根据文本文件生成迷宫,这些文本文件称作迷宫文件。迷宫文件的扩展名为.maze,其中的文本内容有着特殊的组织结构:任意两行文本所含有的字符 个数必须相同,而且字符只可以是“ * ”、“#”、“0”或“1”。迷宫文件中的“ * ”和“#”分别代表迷宫的入口和出口,“0” 和“ 1” 分别代表迷宫中的 “路” 和“墙”。例如,迷宫文件”中等迷宫.maze”所生成的迷宫如图1-1所示。/中等迷宫.maze文件000000101000101001010010010100010100001010*0000101010001010010101000100010000010101000101000101011010010#10100001010000001000101010100100110101001010100

      3、0100011101001010001010100101010100100图1-1中等迷宫界面(2)用户可以通过界面上提供的菜单选项,选择“迷宫文件”来生成对应的 迷宫类型。(3)用户可以通过界面上提供的菜单选项,选择迷宫中的“墙”和“路”的 外观图像以及默认“墙”和“路”的图像。同时用户也可以更改迷宫中“走迷宫者” 的图像。(4)当用户开始玩游戏时想重新开始,用户可以随时单击界面上下方图片位 置提供的按钮,重新开始走迷宫。(5)本程序还具有音乐播放的功能,当用户成功移动走迷宫者后,程序播放 简短的一声音乐。(6)本迷宫程序增加“英雄榜”功能既排名功能,当用户成功将迷宫中的走 迷宫者从入口移动到出口,如果成绩能排进前三名,就弹出一个对话框,将用户的 成绩保存到“英雄榜”中,并且可以查看“英雄榜”以及删除“英雄榜” 。2系统需求分析2.1系统目标设计一个基于java的走迷宫小游戏,游戏的结果是让走迷宫者从迷宫的入口 处走到迷宫的出口处。根据已有的走迷宫小游戏进行新功能的增加。2.2 主体功能(1)玩家可以任意选择不同的迷宫图进行走迷宫游戏。(2)玩家可以自定义玩家头像、墙的图像以及路的图

      4、像。(3)游戏进行时可以点击提示按钮重新开始游戏(4)根据玩家所玩的记录进行排行榜设置,分别列出保存各类型迷宫(简单 迷宫、中等迷宫、复杂迷宫)的前三名,玩家完后可以点击英雄榜自行查看。(5)玩家可以消除英雄榜并且重新载入游戏。2.3 开发环境Eclipse3系统概要设计3.1系统的功能模块划分1 .系统的总体设计在设计走迷宫时,需要编写 6个java源文件:MazeWindow.java、Maze.java、 WallOrRoad.java、MazePoint.java 、PersonInMaze.java、HandleMove.java、 Record.java、ShowRecord.java 和 Sound.java。走迷宫除了上述 6 个 java 源文件 所给出的类外,还需要Java系统提供的一些重要的类,如JmenuItem和File等类。 走迷宫所用到的一些重要的类以及之间的组合关系如下图所示:2 .系统模块划分本系统主要有以下几个功能模块:创建走迷宫的主窗口、创建迷宫、创建墙 和路及确定位置的对象,创建走迷宫者,创建处理键盘事件对象,创建英雄榜及显 示英雄榜。该软件主要

      5、组成模块和各个模块之间的调用关系如下图所示:图3-2功能模块图3 .2系统流程图玩家开始打开界面进行游戏,通过菜单选项选择简单、中等、复杂迷宫中的一 种进行游戏。开始的界面各个图像是程序默认的图像,玩家也可以根据自己的喜好 自行选择文件夹里的图像来设置墙的图像、路的图像以及走迷宫者的图像。然后玩 家根据提示点击走迷宫者开始游戏,玩家通过对键盘的操作来控制走迷宫者,使其 从入口进入从出口出来。在玩的期间如果玩家在十秒内没能从出口出来则玩家的图 像会变成猪的图像。游戏结束后如果玩家破纪录则根据提示进入英雄榜,同时可以 查看英雄榜。玩家还可以消除英雄榜重新打开界面进行游戏。具体活动流程图如下 所示:10 / 31图3-3活动流程图4 系统详细设计4.1 系统的主界面设计1成员变量maze是Maze类声明的对象,用来刻画迷宫,是MazeWindovW1中最重要的成员 之一。MazeWindovW!根据迷宫文件,即根据该类中的 mazeFile来创建maze对象。bar是JMenuBar创建的菜单条,用来添加菜单。bar被放置在窗口的顶部。menuChoice是JMenu创建的菜单,其名字为“选

      6、择迷宫文件 。menuChoice和 menuImag啾添加到菜单条bar中。walllmage、roadimage、和 defaultimage 是 JMenuItem 仓建的菜单项,名字 依次为“墙的图像” 、 “路的图像”和“墙和路的默认图像” ,这三个菜单项被添加 至U菜单 menuimage中。 wallimage roadimage ft defaultimage 者冏等当前窗口注册 为自己的 ActionEvent 事件监控器。mazeFile 、 wallimageFile 和 roadimageFile 是 File 的对象,其中 mazeFile 用来存放迷宫文件的引用,而wallimageFile 和 roadimageFile 分别用来存放迷宫中“墙”和“路”的外观图像文件的引用。renew是JButton创建的按钮对象,名字为“重新开始” 。Renew将当前窗口注 册为自己的ActionEvent 事件监控器。2方法MazeWindow()是构造方法,负责完成窗口的初始化操作,具重要的操作之一是:读取当前目录中扩展名为 .maze 的迷宫文件,并根据迷宫文件的

      7、名字创建JMenuitem菜单项添加到menuChoice菜单中,然后将当前窗口注册为每个菜单上的ActionEvent 事件监控器。另外,该构造方法在执行过程中,将mazeFile 初始化为menuChoice 菜单中的第一个菜单项所代表的迷宫文件,并根据该迷宫文件创建 MazeWindowt口中的 maze对象。该构造方法还对 wallimageFile 和 roadimageFile 进行了初始化,并指定迷宫中“墙”和“路”所使用的默认图像。init ()方法根据迷宫文件初始化 maze对象,完成必要的初始化操作。actionPerformed (ActionEvent )方法是 MazeWindowfe实现的 ActionListener 接口中的方法。MazeWindowfe仓1J建的窗口时 menuChoice菜单和 menuimag磔单中 的菜单项以及renew 按钮上的 ActionEvent 事件监控器。当用户选中某个菜单项或单击按钮时,窗口将执行actionPerformed ( ActionEvent )方法进行想应得操作。如果用户选中 menuChoice 菜单

      8、中的某个菜单项,即用户选择了一个迷宫文件,actionPerformed ( ActionEvent )方法所执行的操作就是改变mazeFile 所引用的迷宫文件,然后调用init ()方法。如果用户选中 menuimag磔单中的wallimage 或 roadimageFile 菜单项时, actionPerformed (ActionEvent )方法所执行的操作就是分别改变wallimage和roadimage所引用的图像文件,从而让 maze对象改变 “墙”或路的图像,如果用户选中 menuimage菜单中的defaultimage 菜单项, actionPerformed ( ActionEvent ) 方 法 所 执 行 的 操 作 就 是 将 wallimage 和 roadlmageFile所引用的图像文件恢复到默认设置,并让maze对象恢复“墙”或“路” 的默认图像。当用户单击 rennew按钮时,actionPerformed (ActionEvent )方法 所进行的操作时保持当前的 mazeFile所引用的迷宫文件,并执行init方法。main (String口

      9、 )方法是程序运行的入口方法。3.主界面效果图如下图所示图4-1主界面图4.2 Maze的设计1 .成员变量mazeFile是File类声明的对象,用来存放迷宫文件的引用。mazePoint是MazePoint类型的二位数组,其单元为MazePoint类创建的对象, 用来确定“墙”和“路”以及“走迷宫者”的位置,即确定WallOrRoad以及PersonInMaze 对象在maze对象中的位置。wallOrRoad是 WallOrRoad类型的二维数组,七单元为 WallOrRoad类索川江的 对象,用来表示迷宫中的“墙”或“路”。person是PersonInMaze类仓建的对象,用来表示迷宫中的“走迷宫者”。handleMove是HandleMove类创建的对象,负责处理person对象上的键盘事件。wallImage和roadImage是File类声明的对象,用来存放绘制“墙”和“路” 的外观的图文件的引用。distance、m和n是int型数据。mazePoint对象卞I据distance 的值来进行初 始化,以便确定 mazePoint对象之间白距离,m和n的值是二维数组 mazePoint的 行数和列数。2 .方法maze()是构造方法,负责创建 maze对象。m

      《Java课程设计走迷宫》由会员m****分享,可在线阅读,更多相关《Java课程设计走迷宫》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.