Java语言与面向对象技术

课程设计报告

( 2014 -- 2015年度第 1 学期)

走迷宫

目 录

目 录2

1 概 述1

1.1 课程设计目的1

1.2 课程设计内容1

2 系统需求分析2

2.1 系统目标2

2.2 主体功能2

2.3 开发环境3

3 系统概要设计3

3.1 系统的功能模块划分3

3.2 系统流程图4

4系统详细设计6

4.1系统的主界面设计6

4.2Maze的设计7

4.3PersonInMaze的设计8

4.4WallOrRoad的设计8

4.5MazePoint的设计9

4.6Sound的设计10

4.7Record的设计10

5 测试11

5.1 测试方案11

5.2 测试结果11

6 小结16

参考文献17

附录1 源程序清单18

走迷宫的设计

1 概 述

1.1 课程设计目的

1.加深对《Java语言与面向对象技术》课程基础知识的理解,掌握Java语言面向对象程序设计的开发方法和步骤;

2.进一步理解面向对象程序设计的思想和方法,利用Java语言进行程序设计的能力;

3.课程设计将课本上的理论知识和实际应用相结合,锻炼学生发现问题、分析问题和解决问题的能力。加强学生研发、编写、调试程序的能力;

4.培养学生在项目开发中团队合作精神、创新意识及能力;

5.提高学生科技论文写作能力,规范完成课程设计报告。

1.2 课程设计内容

设计GUI界面的走迷宫游戏,游戏的目的是让走迷宫者从迷宫的入口处进从迷宫出口处出。具体内容如下:

(1)程序根据文本文件生成迷宫,这些文本文件称作迷宫文件。迷宫文件的扩展名为.maze,其中的文本内容有着特殊的组织结构:任意两行文本所含有的字符个数必须相同,而且字符只可以是“*”、“#”、“0”或“1”。迷宫文件中的“*”和“#”分别代表迷宫的入口和出口,“0”和“1”分别代表迷宫中的“路”和“墙”。 例如,迷宫文件“中等迷宫.maze”所生成的迷宫如图1-1所示。

//中等迷宫.maze文件

000000101000101001010

010010100010100001010

*00001010100010100101

010001000100000101010

00101000101011010010#

101000010100000010001

010101001001101010010

101000100011101001010

001010100101010100100

图1-1 中等迷宫界面

(2)用户可以通过界面上提供的菜单选项,选择“迷宫文件”来生成对应的迷宫类型。

(3)用户可以通过界面上提供的菜单选项,选择迷宫中的“墙”和“路”的外观图像以及默认“墙”和“路”的图像。同时用户也可以更改迷宫中“走迷宫者”的图像。

(4)当用户开始玩游戏时想重新开始,用户可以随时单击界面上下方图片位置提供的按钮,重新开始走迷宫。

(5)本程序还具有音乐播放的功能,当用户成功移动走迷宫者后,程序播放简短的一声音乐。

(6)本迷宫程序增加“英雄榜”功能既排名功能,当用户成功将迷宫中的走迷宫者从入口移动到出口,如果成绩能排进前三名,就弹出一个对话框,将用户的成绩保存到“英雄榜”中,并且可以查看“英雄榜”以及删除“英雄榜”。

2 系统需求分析

2.1 系统目标

设计一个基于java的走迷宫小游戏,游戏的结果是让走迷宫者从迷宫的入口处走到迷宫的出口处。

根据已有的走迷宫小游戏进行新功能的增加。

2.2 主体功能

(1)玩家可以任意选择不同的迷宫图进行走迷宫游戏。

(2)玩家可以自定义玩家头像、墙的图像以及路的图像。

(3)游戏进行时可以点击提示按钮重新开始游戏

(4)根据玩家所玩的记录进行排行榜设置,分别列出保存各类型迷宫(简单迷宫、中等迷宫、复杂迷宫)的前三名,玩家完后可以点击英雄榜自行查看。

(5)玩家可以清除英雄榜并且重新载入游戏。

2.3 开发环境

Eclipse

3 系统概要设计

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等类。走迷宫所用到的一些重要的类以及之间的组合关系如下图所示:

java课设迷宫游戏_Java课程设计走迷宫.doc相关推荐

  1. Java课设对对碰_JAVA课程设计题目

    序号题目要求 1简单的计算器程序1.该程序加.减.乘.除等运算 2.界面实现 2文件加密.解密软件通过软件界面选择打开一个文本文件,使用移位密码对文件内容进行加密并保存,或者针对移位密码加密的文本文件 ...

  2. Java课设对对碰_JAVA课程设计

    word 文档 可自由复制编辑 一.课程设计目的 本课程设计的目标就是要达到理论与实际应用相结合, 提高学生组织数据及 编写大型程序的能力,并培养基本的.良好的程序设计技能以及合作能力. 设计中要求综 ...

  3. Java课设对对碰_java课程设计实验报告

    1 一 实验目的 加深学生对课堂讲授内容的理解,从计算机语言的基本概念.程序设计的基本方法.语 法规则等方面加深理解, 打好程序设计. 开发软件的良好基础.在上机实验中,提高学生对 Java 语言各部 ...

  4. java课程设计总结迷宫_Java课程设计走迷宫详解.doc

    Java语言与面向对象技术 课程设计报告 ( 2014 -- 2015年度第 1 学期) 走迷宫 目 录 目 录2 1 概 述1 1.1 课程设计目的1 1.2 课程设计内容1 2 系统需求分析2 2 ...

  5. java中的纸牌游戏_JAVA课程设计纸牌游戏

    <JAVA课程设计纸牌游戏>由会员分享,可在线阅读,更多相关<JAVA课程设计纸牌游戏(16页珍藏版)>请在人人文库网上搜索. 1.一.问题分析和任务定义1.题目:纸牌游戏:编 ...

  6. python迷宫游戏的课程设计_迷宫游戏数据结构课程设计

    计算机解迷宫问题通常用的是"穷举求解"方法,即从入口出发,顺着某一个方向 进行探索,若能走通,则继续往前进:否则沿着原路退回,换一个方向继续探索,直至 出口位置,求得一条通路.假如 ...

  7. 【源码+图片素材】Java王者荣耀游戏开发_开发Java游戏项目【王者荣耀】1天搞定!!!腾讯游戏_Java课程设计_Java实战项目_Java初级项目

    王者荣耀是当下热门手游之一,小伙伴们是否想过如何制作一款属于自己的王者荣耀游戏呢? 本课程讲解了一个王者荣耀游戏的详细编写流程,即使你是刚入门Java的新手,只要你简单掌握了该游戏所需要的JavaSE ...

  8. java坦克大战总体功能设计_java课程设计——坦克大战

    ##一.团队课程设计博客链接: ##二.个人负责模块或任务说明: ###模块:GUI设计(游戏面板,登录面板,主窗体,显示关卡面板) ##三.自己的代码提交记录截图 ##四.自己负责模块或任务详细说明 ...

  9. java坦克大战互相碰撞_Java课程设计——坦克大战

    坦克大战--坦克类 一. 团队课程设计博客链接 二.个人负责模块和任务说明 模块:坦克类(玩家坦克类+电脑坦克类),代码整合 三.代码的提交记录截图 四.负责模块和任务详细说明 玩家坦克继承Visib ...

  10. c语言课程设计走迷宫游戏,C语言课程设计-迷宫游戏.doc

    计算机技术基础课程设计 C语言 设计报告 题目:完整的二维迷宫游戏 学院:工商管理学院 专业:信息系统与信息管理 班级:050507 姓名:孙月 指导教师:张首伟 设计日期:2004年12月10日 题 ...

最新文章

  1. java中gso是什么意思_Java中用Gson解析json字符串
  2. python opencv轮廓总结
  3. Oracle查询优化-05元数据查询
  4. 泛型集合中对继承类的转换
  5. linux lib lib64 区别,lib,lib32,lib64,libx32和libexec之间的区别
  6. [嵌入式][分享][交流]发布一个消息地图的模块
  7. jzoj3771-小Z的烦恼【高精度,数学】
  8. 征稿 | 国际KG大会 IJCKG 2021专辑征文
  9. Jumpserver web界面跳板机
  10. java导入文件太大 处理速度慢_java – 处理大文件时IntelliJ非常慢
  11. MySQL 宣布停止使用 master、slave!
  12. Linux 下安装python3
  13. 大华管理平台用户名_助力制造苏州紫光云引擎携手大华精密,共建精密机加数字化样板工厂...
  14. 好用的蓝牙管理工具推荐,帮您优雅管理蓝牙功能!
  15. SwiftyJson 实现Json转模型
  16. HTML基础之表单制作
  17. 将自家的位置标注到地图上(51ditu.com)
  18. mac 树莓派 kali linux系统,MacOS制作树莓派kali系统
  19. html调用 另存为,:将html另存为文本
  20. 计算机科学与技术学校学科评估,计算机科学与技术学科评估具体排名「大学专业排名」...

热门文章

  1. Django实现adminx后台网站访问的IP记录统计
  2. 记录手机连接笔记本热点无法上网问题
  3. java TIFF转JPG并压缩
  4. Unity-瓦片地图详解
  5. 王者荣耀刷金币(python+adb实现)
  6. Flask 创建app 时候传入的 static_folder 和 static_url_path参数理解(1ni)
  7. 动态改变图片的useMap属性导致IE假死或崩溃!
  8. 通过谷歌搜索指定大小的图片
  9. C# chart实时曲线
  10. 【金融财经】金融市场一周简报(2017-09-01)