JAVA拼图大作业实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016秋季学期《Java语言》大作业
系统说明报告
目录
1项目目的与意义 (3)
1.1项目背景说明 (3)
1.2项目目的与意义 (3)
2 软件开发环境与技术说明 (4)
2.1软件开发环境 (4)
2.2软件开发技术描述 (4)
3系统分析与设计 (5)
3.1项目需求分析说明 (5)
3.2系统设计方案 (5)
4系统源代码 (8)
4.1系统源代码文件说明 (8)
4.2源代码 (8)
5系统使用说明书 (41)
6参考资料 (49)
7附件说明 (49)
1项目目的与意义
1.1项目背景说明
JAVA语言2016年学期期末大作业-44拼图游戏的设置
1.2项目目的与意义
目的:实现简单的4X4JAVA拼图游戏的简单功能,可以进行用户的登录和拼图游戏的完成,给用户以良好的游戏体验,再加入更多个性化的内容
意义:
从用户角度,设计一个简单但是十分考验人的小型拼图游戏,让人们在简单方便的操作中舒缓自己一天的疲惫,和朋友一起进行挑战,不断地突破,展现游戏的美丽,实现游戏的价值
从开发者角度,这是对我半年JAVA语言学习的检测,同时我也自学了许多东西,比如数据库的链接,SQL语句和JAVA的各种函数,让我可以真正的体会到开发一个项目的过程和需要付出的不懈努力,也让我享受到了自己尽全力完成一个项目的过程和完成后的喜悦。
2 软件开发环境与技术说明
2.1软件开发环境
JAVA开发环境-Eclipse
JAVA支持包:import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import javax.swing.*;
mysql-connector-java-5.1.40-bin.jar(MySql驱动jar 包)
数据库环境:MySql数据库(使用的是Navicat图形界面)
2.2软件开发技术描述
1.拼图游戏界面设计主要使用了JAVA的GUI图形界面,主登录界面和账号注册界面使用的是流式FlowLayOut布局进行登录框和按钮的设置,而拼图游戏界面则是使用的网格式GridFlowOut布局.
2.通过连接MySql数据库,(名称:user),创建数据表user_info 列名称为:username(账号),password(密码),score(过关时间), Count(过关所用步数);实现了游戏的账号注册和登录功能,以及每个账号成绩的记录和储存,并可以再推行界面中显示每个用户的游戏
记录
3.通过Timer类实现了拼图游戏计时功能
4.图片存储在项目文件夹下image文件夹中,通过名字的巧妙设置实现了打乱图片顺序,切换图片,判断拼图是否完成。
3系统分析与设计
3.1项目需求分析说明
立足于用户的角度,首先,我们实现了个性化的服务,即账号的注册和登录功能,不同的用户可以进行使用,使游戏具备了最重要的竞技性,只有这样才不会让用户感到无聊,并且我们实现了4X4拼图游戏的基本功能,而且配有游戏的时间的所用步骤,可以实时地反映给游戏用户,让用户清楚地了解到自己的分数,同时还可以记录游戏过关的时间和步数,满足了用户的冲击记录的心理需求,调高了游戏的可玩性,不会被用户快速地玩腻。
3.2系统设计方案
从用户的角度,我们需要有以下数据类型
数据库user
数据表user_info
列名称类型长度数据
username varchar 255 JAVA2016
password varchar 255 Java2016
score varchar 255 01:30
count int 11 56
username和password是用户的必有属性,可以进行登录和注册score和count 即用户所用的时间和步骤,双重分数完美呈现了每个人的实力
从系统设计角度
首先,
最主要的是实现最最基本的游戏功能,即设计拼图游戏的核心程序
1.拼图表格式的布局,容易让我想到使用按钮进行网格式布局
2.为每个按钮添加背景图片(这些背景图片需要经过事先的裁剪),
3.需要进行按钮背景图片的打乱,容易想到使用随机数RANDOM()
函数,然后会想到在背景图片的名字上做文章来进行背景图片的随机设置
4.我们把16个按钮存储在数组中,便于操作,然而数组最大的方便
之处在于他的随机存储,我们可以通过下标访问任意一个按钮,于是想到把图片的名字与下标联系在一起,解决了图片的随机排列
5.如何设置背景图片?我们需要有图片的路径,而图片的路径仅仅
是图片名字的不同,所以我们将固定的图片存储路径存放到字符串数组中,然后通过循环进行图片的设置,SetIcon()函数可以做到
这一切.
6.切换下一张,实质还是背景图片的变化,所以我们继续在图片名
字上做文章,设置一个表示数字代表是第几张的图片,把他设置到图片名字里面。然后切换下一张被简化为改变一个数字(编程思路要清晰),数字变即路径变,也就是背景图发生变化
总结:拼图-》背景图片的变化-》背景图片路径的变化-》图片名字的变化
接下来,
实现一个项目的登录和注册,我们需要数据库,而游戏的记录也需要数据库来存放,所以我么必须首先确立自己的数据库体系,如上所示,然后就是实现注册,将数据写入数据库和登录,在数据库中进行匹配,游戏记录的写入和读取。在游戏成功时,获取当时的时间和步数,写入对应的用户的数据表中,然后另一个界面中设置表格,从数据库中读取信息,然后写入到表格里面进行展示
最后,
我考虑了游戏的一些具体实现,游戏界面的设计,如何才能让用户看得舒心,玩的自在,和暂停等实用小功能,无限满足用户的需求。
以上,就是我在设计拼图游戏是系统设计方案,以后还会不断地完善自己的程序!