Java课程设计拼图总结报告.docx

上传人:b****5 文档编号:29682792 上传时间:2023-07-26 格式:DOCX 页数:30 大小:120.95KB
下载 相关 举报
Java课程设计拼图总结报告.docx_第1页
第1页 / 共30页
Java课程设计拼图总结报告.docx_第2页
第2页 / 共30页
Java课程设计拼图总结报告.docx_第3页
第3页 / 共30页
Java课程设计拼图总结报告.docx_第4页
第4页 / 共30页
Java课程设计拼图总结报告.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

Java课程设计拼图总结报告.docx

《Java课程设计拼图总结报告.docx》由会员分享,可在线阅读,更多相关《Java课程设计拼图总结报告.docx(30页珍藏版)》请在冰豆网上搜索。

Java课程设计拼图总结报告.docx

Java课程设计拼图总结报告

Java应用技术实训报告

题目多功能拼图游戏软件

所在院系软件学院

所在单位软件教研室

一.整体设计

本系统共包括11个java源文件和2文件。

这是个功能比较齐全的

拼图游戏,最要点的不用自己手动切割图片,再进行加载。

而是应用类

方法在内存中进行图片切割和加载,方便了用户的使用。

其他,该程序

会依照图片的大小自动生成窗口大小,不会造成切割图片错误和切割错

位。

程序最后以*.rc格式的文件来保存游戏记录。

1.类之间的关系如图1所示。

MenuFrame

CardFrame

Puzzle

ShowImageGameOverMatrixSplitGrades

pointButtonClick

2.java源文件及其功能如表1所示。

表1

序号文件名主要功能备注

程序的主类,定义了各个组件的动作和

为窗口设置图标

包括主函数程

序的入口

2CardFrame.java游戏介绍界面增加连续按钮采用卡片布局

初始化游戏界面,创立并增加组件声了然6个静

态方法

4ShowImage.java在游戏中显示完满图片来供应帮助

依照难度等级切割完满图片为拼图块图块保存在内

存中

6Matrix.java加载打乱的图块进行初始化游戏

游戏记录和存档,游戏暂停的实现存档文件格式

为**.rc

游戏时间和步数的计算和游戏结束的

判断

获得拼图的行数和列数,并向其他函

数传参。

10ButtonClick.java实现鼠标动作。

11Arg.java供应图片路径和成绩记录的路径公用接口

二、详细设计

该拼图游戏结合了好多元素,可以图片切割,游戏拼图,游戏成功时和

打破记录时的判断,同时还有游戏时间和步数的记录,并以文档形式进

行保存。

在拼图时第一把图片增加到background目录下,程序会自动获

取该目录下的所有文件,并加载到游戏中,进行切割后,显示在拼图按

钮上。

在游戏开始后会更新“开始“菜单,增加“显示图片〞菜单项。

拼图结束时可以显示游戏成绩和记录的存档。

1.主类Puzzle

〔1〕成员变量见表2

表2

成员变量描述变量种类名称

开始状态BooleanStart

窗口宽度intfWidth

窗口高度intfHeight

结束对象gOverGameOver

焦点控制booleanindex

〔2〕方法见表2-1

表2-1

方法名功能备注

Puzzle()

创立游戏窗口和设置图

StartGame()

开始游戏控制,更新开

始菜单

endgame()结束游戏控制弹出结束窗口

FrameLoseFocus

()

使窗口失去焦点事件

FrameGetFocus

()

使窗口获得焦点事件

menuNewClick()进行切割图片调用类spite〔〕

menuGradesClic

k()

实现分数记录和显示调用类ClassGrades

menuShowClik()在游戏中显示完满图片调用类classShowImage

menuExit()退出游戏

menuHelpClik()实现帮助功能以弹出式对话框设计

menuAboutClik(

实现关于功能介绍了相关信息和作者

〔3〕源代码见文件

2.类CardFrame

〔1〕成员变量见表3

表3

成员变量描述变量种类名称

布局格式变量CardLayoutcard

容器变量Containercon

面板数组JpanelPanel[]

〔2〕方法见表3-1

表3-1

方法名功能备注

CardFrame()

创立窗口,布局游戏介

增加了焦点事件适配器

nextCard()转到一下张卡片采用卡片布局

〔3〕源代码见文件

3.类MenuFrame

〔1〕成员变量见表4

表4

成员变量描述变量种类名称

难度等级变量inttype

文件路径Stringfilename

难度按钮组ButtonGroupbgrp

图片选择按钮组ButtonGroupfrp

菜单更新控制Booleanupdate

菜单项数组JMenuMm[]m[]

〔2〕方法见表4-1

表4-1

方法名功能备注

MenuFrame()创立窗口增加了焦点事件适配器

addMenu()向菜单栏中增加菜单以数组形式增加多个菜单

menuLevelClick

()

实现等级选择

menuBackground

Clik()

实现背景图片的选择

getType()返回一个难度等级

getFilename()获得图片的名字

initMenuBegin(

初始化开始按钮并设置同时给出了选择菜单后的相应

快捷键动作

initMenuBackgr

ound()

初始化背景菜单

initMenuAbout(

初始化关于菜单

initMenuOpitio

n()

初始化选择菜单

initMenuLevel(

初始化等级菜单以选择框形式选择等级

updadeMenuBegi

n()

游戏开始后更新开始菜

比原来增加了显示图片菜单项

〔3〕源代码见文件

4类ShowImage

〔1〕成员变量见表5

表5

成员变量描述变量种类名称

无成员变量

〔2〕方法见表5-1

表5-1

方法名功能备注

ShowImage()创立显示图片的窗口在游戏中供应帮助使用

〔3〕源代码见文件

5类Split

〔1〕成员变量见表6

表6

成员变量描述变量种类名称

难度等级IntHARDNORMLEASY

路径名称stringFilenamepath

〔2〕方法见表6-1

表6-1

方法名功能备注

Spilt()创立Spilt对象

Set()创立存档文件

BufferedImag用到了awt.image.

把背景图片切割成拼

e[]dividBufferedImage里的系统类

图块

get〔〕获得Spilt对象

〔3〕源代码见文件

6类Matrix

〔1〕成员变量见表7

表7

成员变量描述变量种类名称

面板Jpanelpanel

拼图行数introw

拼图列数Intcal

〔2〕方法见表7-1

表7-1

方法名功能备注

创立图块所在的按

Matrix()

钮并加监听且增加

到面板中

Init()

实现图块的随机排

打乱了图块的序次

〔3〕源代码见文件

7.类Grades

〔1〕成员变量见表8

表8

成员变量描述变量种类名称

自定义类DataData[]

拼图步数Intstep

拼图计时Inttime

〔2〕方法见表8-1

表8-1

方法名功能备注

Grades()构造函数

creatData()

生成拼图记录的文

readData()读取已经存在的记录以.rc格式保存记录的数据

Set()记录游戏的数据有打破记录的判断

Show()显示记录

〔3〕源代码见文件

8.类GameOver

〔1〕成员变量见表9

表9

成员变量描述变量种类名称

搬动步数intstep

游戏时间longcounttime

开始时间longnow

控制变量booleanStopgameOver

〔2〕方法见表9-1

表9-1

方法名功能备注

GameOver()构造函数创立对象

Start()控制游戏开始

judge()判断游戏可否结束

pause()实现游戏的暂停

getStep()

获得搬动图块的步

getTime()获得游戏时间

〔3〕源代码见文件

9.类point

〔1〕成员变量见表10

表10

成员变量描述变量种类名称

拼图行数introw

拼图列数intcal

〔2〕方法见表10-1

表10-1

方法名功能备注

getRow()获得行数

getCal()获得列数

Set()设置拼图行和列

〔3〕源代码见文件

10.类ButtonClick

〔1〕成员变量见表11

表11

成员变量描述变量种类名称

按钮JButtonButton[][]

行数和列数IntRowcal

结束标志booleanend

〔2〕方法见表11-1

表11-1

方法名功能备注

ButtonClick(获得各个参数6个参数

actionPerfor

med()

实现相应的鼠标动

〔3〕源代码见文件

11类Arg

〔1〕成员变量见表12

表12

成员变量描述变量种类名称

图片路径接

Stringpath

记录文件接

Stringrc

〔2〕代码见文件

三.运行收效

游戏启动后的初始界面图1

图1

选择“关于〞菜单下的“帮助“菜单弹出以下对话框:

图2

图2

选择“关于〞菜单下的“关于“菜单弹出以下对话框:

图3

图3

选择难度级别–中级和背景图片,按开始后即可进

入游戏画面如图4

图4

在游戏过程中可以按“开始〞菜单下面的“显示图片〞

来查察完满图片如图5

图5

游戏成功后会显示你游戏所用时间和搬动图块的步数如图6

图6

若是你的游戏时间打破记录就会第一显示以下画面如图7

图7

输入名字后,按确定就可以查察所有成绩排名了如图8

〔也可以经过“开始〞菜单下的“分数排名〞来查看作绩〕

图8

所有游戏截图达成

四.工作总结

经过这段时间的学习我收获不小,总结起来有以下几点:

1更进一步理解了JAVA编程的思想,领悟到JAVA与其他编程语言的不

同。

关于这种面向对象的编程思想,使刚入门的人很快就能写出自己的

程序。

2锻炼了自己的着手和自学能力,在编程中有好多类和方法在课本中没

有学到和提及到。

都是经过自己查帮助文档,或经过网络进行学习和了

解到的。

和别人在一起交流是一件很快了的事。

3领悟到写程序最重要的是程序思想,而不是单纯的写代码。

如何解决

类之间的关系和继承关系,如何组织类是很要点的。

其他关于接口和变

量的私有还是公有,以及参数传达等方面也收获不小。

该程序需要改良的地方:

1在变量的接见权限设置不到位,当时为了保证程序的运行经过,好多

原来私有的变量都定义为公有,关于类的成员保护做的不够。

2若是在搬动图块时,发出声音就会更圆满。

3给程序增加背景音乐。

4程序界面风格设计还有待改良。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1