没有合适的资源?快使用搜索试试~ 我知道了~
java课程设计报告-基于Java的俄罗斯游戏设计报告.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 141 浏览量
2024-05-18
23:24:01
上传
评论
收藏 827KB DOC 举报
温馨提示
![preview](https://dl-preview.csdnimg.cn/89324684/0001-f0b2cbffd954f6d92db0af48400b1427_thumbnail-wide.jpeg)
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
试读
23页
本游戏功能: 通过键盘控制小俄罗斯方块,来将这些方块拼凑成一个个完整的行,来实现分数的增加。 报告里有众多画图以及实现,适用于参考使用
资源推荐
资源详情
资源评论
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![thumb](https://img-home.csdnimg.cn/images/20210720083646.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![jar](https://img-home.csdnimg.cn/images/20210720083455.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/release/download_crawler_static/89324684/bg1.jpg)
java 课 程 设 计 报 告 书
第 1 页 共 23 页
1 设计内容及要求
1.1 设计的目的:
《面向对象程序设计》是一门实践性很强的计算机专业基础课程,课程设计是学
习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对面向对
象程序设计的理论、方法和基础知识的理解,掌握使用 Java 语言进行面向对象设计
的基本方法,提高运用面向对象知识分析实际问题、解决实际问题的能力。
1.2 设计的要求:
课程设计可选用 Eclipse、JBuilder、NetBeans 等作为开发平台以提高开发效率,
尽可能熟练掌握其中一种集成开发环境。建议采用 UML 建模技术进行系统的分析设计,
在 Visio 中画出系统用例图和类图,并将 UML 图复制到设计报告中。
通过这次设计,要求掌握以下内容:
1)面向对象技术中的继承与多态(重载和覆盖)机制、各种修饰符的使用
2)类、包、接口的定义与使用
3)常用工具类与算法的实现(数组、向量、字符串、链表)
4)Java 常用标准 GUI 组件及其事件处理
5)Java 的异常处理机制
6)Java 的数据库连接技术
7)Java 的多线程技术与动画制作
2 需求分析
随着网络技术的发展,人们的生活日益离不开网络,网络给人们带来了各种各样
的信息和更多更新的娱乐。据统计,每天上网的人中有 75%利用网络来丰富娱乐自己的
生活。其中游戏最为常见和普遍。所以,这次课程设计,我想实现一个小游戏:俄罗
斯方块,为将来步入游戏编程领域打下基础。
本游戏功能:
通过键盘控制小俄罗斯方块,来将这些方块拼凑成一个个完整的行,来实现分数
的增加。
![](https://csdnimg.cn/release/download_crawler_static/89324684/bg2.jpg)
java 课 程 设 计 报 告 书
第 2 页 共 23 页
3 系统设计
本程序主要实现了俄罗斯方块游戏。
主要设计过程如下:
一个俄罗斯小方块执行的过程:
![](https://csdnimg.cn/release/download_crawler_static/89324684/bg3.jpg)
java 课 程 设 计 报 告 书
第 3 页 共 23 页
通过线程不断执行类 fang 中的方法 yundong()来实现一个俄罗斯方块的每一格的
下落,每当方法 yundong()执行了 sudu 的倍数次时就执行一次 xiaoluo()方法,来清
除当前显示在“半空中”的俄罗斯方块的显示,并初始化其对应数组数据,然后将在游戏
显示数组 a 中的该俄罗斯方块对应数据全部向下移动一行,当下次执行 yundong()方法
重绘游戏区时,即可实现俄罗斯小方块的下移一行。当该方块停止时,就判断是否有删除
行,并根据判断结果绘制分数面板,同时调用方法 init()初始化基本变量并给游戏区显示
数 a 组赋初值。然后执行上一个俄罗斯小方块同样的步骤,这样循环执行,就可以实现游
戏的持续进行。
键盘事件:
键码:
VK_ENTER: 暂停游戏,即将游戏线程悬挂起来。
VK_LEFT :控制正在下落的俄罗斯方块向左移动,即当按一次 VK_LEFT 键时,将该方块对
应的游戏区显示数组 a 中的数据逐个向左一列赋值。
VK_RIGHT:控制正在下落的俄罗斯方块向右移动,即当按一次 VK_RIGHT 键时,将该方块
对应的游戏区显示数组 a 中的数据逐个向左右一列赋值。
VK_UP :控制正在下落的俄罗斯方块的旋转,即当按下一次该键时,俄罗斯小方块就旋
转 90 度显示。它是通过预定义每种俄罗斯小方块的每种旋转可能的数据,并
根据具体条件将这些对应数据赋值给游戏显示数组中的对应位置。
VK_SPACE:控制俄罗斯小方块的下落速度,即当该方块没有停止时,设置速度变量为 1。
分数控制:
如果经过判断,存在可以删除的行,就执行方法 defen(),并根据所要删除的行数
beishu 来设置分数的值,然后将分数显示在分数面板上,再将游戏显示数组 a 中的所有用
于显示的数据向下移动 beishu 行,最后重绘游戏区。
![](https://csdnimg.cn/release/download_crawler_static/89324684/bg4.jpg)
java 课 程 设 计 报 告 书
第 4 页 共 23 页
To 是否
为真
类 xiaohang
类结束
定义变量:
int pastime;boolean to;
fang fa;music mu;
构 造 方 法
xiaohang
方法 xiao
方法 run
初始化变量:
This.fa=fa;
this.to=true;
this.pastime=1;
this.mu=mu;
This.sleep(pastime)
执行成功
调 用 方 法
fa.yundong()
游 戏 是 否
结束
停止音乐
阻塞线程
This.xiao();
调用 xiao 方法
是
否
是
抛出异常
否
线 程 类
的 流 程
图
![](https://csdnimg.cn/release/download_crawler_static/89324684/bg5.jpg)
java 课 程 设 计 报 告 书
第 5 页 共 23 页
各个类的 UML 图
+kuai()
+chuangjian() : int
+l[][] : int
+mm : int
kuai
+music()
+play() : void
+stop() : void
+main() : void
+ url
+ ac
music
+fang()
+actionPerformed() : void
+init() : void
+yundong() : void
+fuzhi() : void
+init1() : void
+keyPressed() : void
+keyReleased() : void
+keyTyped() : void
+xialuo() : void
+stop() : bool
+canl() : bool
+canr() : bool
+kebian() : bool
+candelet() : bool
+defen() : void
+main() : void
#p1
#p2
+label
+imlabel
+r1
+r2
+r3
+r4
#bg
#menubar
#menu
#submenu
#start
#dengji
#out
#chonglai
+l[][]
+a[][]
+L1
+aaa[][]
+kuai : kuai
+x : int
-b
+b : int
+bb : int
+count : int
+count1 : int
+count2 : int
+fenshu : int
+sudu : int
+mm : int
+beishu : int
+nn : int
+go : bool
+to : bool
+ri : bool
+fi : bool
+zou : bool
+yuce : bool
+mu : music
+xiao : xiaohang
fang
+xiaohang()
+xiao() : void
+run() : void
+pastime : int
+to : bool
+fa : fang
+mu : music
xiaohang
各个类的结构图:
剩余22页未读,继续阅读
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/e473673e23484abfafca58fbb5eb9dd1_qq_61141142.jpg!1)
等天晴i
- 粉丝: 5088
- 资源: 10万+
![benefits](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-1.c8e153b4.png)
下载权益
![privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-2.ec46750a.png)
C知道特权
![article](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-3.fc5e5fb6.png)
VIP文章
![course-privilege](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-4.320a6894.png)
课程特权
![rights](https://csdnimg.cn/release/downloadcmsfe/public/img/vip-rights-icon.fe0226a8.png)
开通VIP
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)