java专业课程设计烟花游戏Word文件下载.docx
- 文档编号:15207352
- 上传时间:2022-10-28
- 格式:DOCX
- 页数:17
- 大小:161.51KB
java专业课程设计烟花游戏Word文件下载.docx
《java专业课程设计烟花游戏Word文件下载.docx》由会员分享,可在线阅读,更多相关《java专业课程设计烟花游戏Word文件下载.docx(17页珍藏版)》请在冰豆网上搜索。
在编程我们使用的java语言,是目前比较流行的编程语言。
在当今这个的时代,java语言在编程方面的优势使得编程有了更好的选择。
Java语言最大的特点是具有跨平台性,使其不受平台不同的影响,得到了广泛的应用。
学习任何知识得目的都是要将它运用到实践中去,所以我们要运用已有的知识,独立得将这个课程设计完成,只有这样,我们才能将知识变成本领,变成属于自己得东西,通过一个学习得学习,我们已经有可一定得Java基础,现在我们就要利用这些基础,来完成课程设计。
2.设计方案论证
2.1设计思路
本次课程设计主要是用java语言编写程序实现放烟花的小游戏。
执行本例后,用鼠标点击浏览器中的面板,释放烟花,烟花可以随鼠标的而变化,在不同的位置绽放,面板上将出现五彩缤纷的烟花效果。
烟花可以同时绽放。
本例因为要模拟烟花效果,所以首先定义执行程序主线程的函数run()对一个烟花进行绘制。
在函数run()中定义Graphics类的对象,通过程序中的算法来绘制烟花。
客户端发送的信息应该分为公用以及私有的信息,然后SendMessageCenter根据信息的类别来判断应该将信息发送给哪些用户。
拥有权限的客户端可以动态地建立聊天频道,然后SendMessageCenter还可以判断信息所属的聊天频道来决定向谁发送信息客户端可以执行聊天命令。
所有这些问题都可以通过Client与Server类的SendMessageCenter方法建立一个不很复杂的通信协议来完成。
一个通信协议就是一组约定,将相关的信息制定一个格式标准,让接收方和发送方都知道这条信息将作为什么身份进行通信。
例如,发送方发送的信息为普通的聊天信息时,可以增加一个前缀:
words="
[chatmessage]"
+words,而发送一条要求返回在线名单的信息时,可以发送另一个前缀words="
[returnonlinelist]"
。
当SendMessageCenter接收到客户端信息时,首先判断message的前缀,如果是"
,则传送给其他客户端,如果是"
,则返回给该客户端一个OnlineList。
然后,因为要实现烟花的缤纷闪烁效果,所以要通过Thread类的Thread.currentThread().sleep()方法使当前线程睡眠,让用户欣赏到当前的绘制效果。
最后,因为要实现人机交互.,所以首先要通过mousePressed(MouseEvente)函数来实现对鼠标事件的监听,这样当按下鼠标时,产生一个新线程就可以看到一个新的烟花效果
2.2设计方法
表1程序中涉及的自定义类表
类名
作用
父类
Fireworks
对小程序进行变量和颜色的初始化
Applet
在设计烟花游戏时,需要编写1个Java源文件:
Fireworks。
作用是对小程序进行变量和颜色的初始化。
程序中涉及的自定义类有Fireworks,其作用如表1所示:
(1)游戏主界面模块:
游戏主界面模块,主要包括游戏图形区域界面、游戏开始按钮、暂停游戏按钮、关闭按钮。
游戏的主界面应该力求美观,爽心悦目。
游戏的主界面是进入游戏后,能够给玩家第一感官的部分,主要包括游戏图形区域界面、游戏的速度选择更新界面、游戏分数的显示更新界面、新生方块的预览、游戏开始按钮、暂停游戏按钮、退出游戏按钮以及游戏排行榜按钮。
从很大程度上决定了玩家对游戏的兴趣问题,因此,游戏的主界面应该力求美观,爽心悦目。
在游戏性能方面,本软件在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。
(2)游戏控制模块:
进入游戏后,点击主屏幕。
即会有烟花从底部涌出烟花,并在点击处爆炸燃烧。
游戏的操作和画面都给游戏提高了游戏的娱乐性。
为了能够给玩家一个很好的游戏环境。
对于烟花游戏,其主要优点在于游戏操作简单,画面感强。
对于大众是休闲娱乐的好项目。
并且制作简单,易懂,巧妙的运用了我们所学习的java基础知识。
系统的整体布局为:
CardLayout布局,采用了文本框、按钮、面板、框架…等组件,菜单主要有run按钮笑脸和哭脸,按钮的功能是重新开始新的游戏。
MineArea类是javax.swing包中Jpanel容器的子类,实现了ActionListener和MouseListener接口,所创建的对象:
mineArea是MineGame类中最重要的成员之一,作为一个容器添加到MineGame窗口的中心。
标明MineArea类的主要成员变量、方法以及和MineGame类之间组合关系的UML图如图1所示。
图1.MineArea类的UML
2.3功能模块
根据本次课程设计的目的和以上的功能描述,将该烟花游戏的系统分为个主要模块:
背景模块、控制模块、变量模块、绘图模块和颜色模块。
系统功能模块图,如图1所示。
图2.块图烟花游戏系统功能模
2.31可行性论证
表2.程序中类的总结
本例知识点
一句话讲解
新学知识
使用Graphics类
绘制烟花
使用Thread类
管理线程
已学知识
使用Math类
产生随机数
使用Color类
设置颜色
本例制作烟花,运行效果如图后所示。
执行本例实例后,用鼠标点击浏览器中的面板,将出现五彩缤纷的烟花效果。
此课程设计的知识点有:
鼠标事件的监听,Graphics类和Thread类的应用。
2.4程序中主要方法说明
2.4.1publicvoidinit()
该方法设置烟花游戏小程序的背景色。
2.4.2publicvoidpaint(Graphicsg)
使该程序可以作为应用程序运行。
2.4.3publicvoidrun()
变量初始化。
如程序中:
publicclassFireworksextendsAppletimplementsMouseListener,Runnable
{
intx,y;
inttop,point;
/**
*对小程序进行变量和颜色的初始化。
并设置背景色为黑色
publicvoidinit()
{
x=0;
y=0;
//设置背景色为黑色
2.4.4Thread.currentThread().sleep()
使当前线程睡眠。
2.4.5publicvoidmousePressed(MouseEvente)
publicvoidmousePressed(MouseEvente)
x=e.getX();
y=e.getY();
Threadone;
one=newThread(this);
one.start();
one=null;
}
/**
*实现MouseListener接中的方法。
为一个空方法。
2.4.6publicvoidmouseReleased(MouseEvente)
publicvoidmouseReleased(MouseEvente)
{
2.4.7publicvoidmouseEntered(MouseEvente)
publicvoidmouseEntered(MouseEvente)
*/
2.4.8publicvoidmouseExited(MouseEvente)
publicvoidmouseExited(MouseEvente)
2.4.9举例介绍程序主线程,对烟花的绘制。
publicstaticvoidmain(Stringargs[]){
Fireworksapplet=newFireworks();
JFrameframe=newJFrame("
TextAreaNew"
);
frame.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
});
frame.getContentPane().add(
applet,BorderLayout.CENTER);
frame.setSize(800,400);
applet.init();
applet.start();
frame.setVisible(true);
*程序主线程,对一个烟花进行绘制。
3.设计结果与分析
程序在JCreator中运行之后的初始界面如图2所示:
图3.烟花游戏程序运行初始图
程序在JCreator中运行之后,点击一下鼠标放烟花如图3所示:
图4.烟花游戏程序运行图
点击很多下:
图5.烟花游戏程序运行图
程序在JCreator中运行之后,烟花绽放时如图4.5所示:
图6.烟花游戏程序运行图
图7.烟花游戏程序运行图
我所设计的烟花小游戏,实现简单的休闲游戏功能。
执行本例后,用鼠标点击浏览器中的面板,将出现五彩缤纷的烟花效果。
在函数run()中定义Graphics
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 专业课程 设计 烟花 游戏