java综合实验设计

上传人:壹****1 文档编号:477765051 上传时间:2022-10-01 格式:DOC 页数:14 大小:55.50KB
返回 下载 相关 举报
java综合实验设计_第1页
第1页 / 共14页
java综合实验设计_第2页
第2页 / 共14页
java综合实验设计_第3页
第3页 / 共14页
java综合实验设计_第4页
第4页 / 共14页
java综合实验设计_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《java综合实验设计》由会员分享,可在线阅读,更多相关《java综合实验设计(14页珍藏版)》请在金锄头文库上搜索。

1、. -综合实验报告:滑板反射小球游戏专业班级: 遥感科学与技术 *: 20213350 : 易乐安 日期: 2021 年6月30日 . 优选-. -一、程序设计报告小球在窗口四壁弹射虚线表示弹射的轨道。左右移动滑板,接住小球弹射,如果没有接住,则游戏失败一次。要求:1. 自拟设计记分方法,和界面的其它局部;2. 滑板用键盘控制左右移动;3. 设置难度调节开关,允许游戏过程中改变这一设置,以调节小球运行速度,速度快,则难度增加。4. 小球在滑板上弹射时,允许一定量的随机变化弹射角度,以实现一定的不确定性。使用模块:对系统包构造、文件构造列表说明,如表2-1、2-2所示。表2-1包名作用J包含用于

2、创立用户界面和绘制图形图像的所有类J定义了动作的类J包含用于创立用户界面和绘制图形图像的所有的类J把类全部导进来J有助于方便地弹出要求用户提供或向其发出通知表2-2文件名作用GameUI.java程序的主窗体,负责窗口和菜单的绘制以及线程的调用。MyThread.Java游戏的线程,主要负责小球的绘制和判断小球是否被接住,以及记录更新分数。MyListener.java监听鼠标位置移动的监听器。用来捕获鼠标的移动和鼠标的当前位置,同时这个类负责板子的绘制与更新。定义界面:设置标题设置大小设置关闭是退出程序 设置翻开窗体时在屏幕中间显示设置窗体的流式布局管理器设置窗体背景颜色创立文本标签对象设置

3、文本标签前景颜色创立进度条对象创立按钮对象 创立菜单条对象 创立菜单对象 创立菜单项选择项对象 创立单项选择选项创立一个按钮组 主要算法描述:MyThread继承于Thread,使用一个单独的线程进展小球的绘制。小球的绘制和滑板的绘制小异,都是使用j进展绘制的。MyThread还兼顾着进展小球是否被接住的判断。主要是通过返回的板子的坐标和小球的坐标来判断小球是否在板子上方的一定围里,如果在,则判断为接住,否则,为掉落进入游戏画面根据球出现的位置,移动鼠标使滑板到相应的位置的上方,测试可以接多少个球。假设滑板接到一个球,则玩家就得一分,假设接不到球,就游戏完毕。先选择游戏的难度,有简单,中等和困

4、难。游戏完毕,选择否,退出游戏。游戏完毕,选择是,重新开场新的游戏。分层构造及调用关系说明二、 程序测试报告用例:关键代码分析publicvoid run() drawOval();publicvoid drawOval() /start = System.currentTimeMillis();while (isFinish) while (isPause) synchronized(this.g)black);g.fillOval(*, y, width, height);y += y1;getColors();g.setColor(color);g.fillOval(*, y, widt

5、h, height);int *2 = listener.get*();if (y 595 & * *2 & * 630) if (ise*ist) isAgain();stopThread();try Thread.sleep(speed); catch (E*ception ef) ef.printStackTrace();小球的绘制其实就是不断的绘制一个圆形,只不过圆形的y坐标在不停的变化。难度的控制是通过主程序传入的speed参数来控制的,这个参数用于Thread.sleep(speed)结果:结论:一个好的算法可以让你的程序更强健,编写的代码量更少,处理异常一直是JAVA里的常事,通

6、过试验,让我对根底的知识更加深入了解,也对更改代码错误有了一定的提升,能看的懂错误的代码错在哪里,并进展修改,使其正确。这个游戏只是一个简单的接球游戏,如果可以做的更好,就会更好的训练人们的集中力和反响速度,敏捷的做出正确的判断。附录:源程序代码:/游戏界面类/ private static GameUI UI; private MyListener ml; private String mand; public static void main(String args) UI = new GameUI(); UI.initUI(); / 初始化窗体的方法/ public void initU

7、I() / 设置标题 this.setTitle(接球); / 设置大小 this.setSize(610, 635); / 设置关闭是退出程序 this.setDefaultCloseOperation(3); / 设置翻开窗体时在屏幕中间显示 this.setLocationRelativeTo(null); / 设置窗体的流式布局管理器 / 设置窗体背景颜色 / 创立文本标签对象 / 设置文本标签前景颜色 / 创立进度条对象 / 创立按钮对象 button.setMargin(new Insets(0, 0, 0, 0); button.setActionmand(暂停); / 通过匿名

8、部类来创立动作监听器 public void actionPerformed(ActionEvent e) String = e.getActionmand(); if (.equals(暂停) button.setMargin(new Insets(0, 0, 0, 0); button images/start.gif); button.setActionmand(继续); for (int i = 0; i list.size(); i+) list.get(i).PauseThread(); if (.equals(继续) button.setMargin(new Insets(0,

9、0, 0, 0); button images/Pause.gif); button.setActionmand(暂停); for (int i = 0; i list.size(); i+) list.get(i).ContinueThread(); ; button.addActionListener(button_listener); this.add(button); this.add(lable); this.add(pBar); this.add(te*t_field); / 的到菜单条 / 为窗体设置菜单条 this.setJMenuBar(bar); / 设置窗体的可见性 this.setVisible(true); /创立菜单条的方法/ / 创立菜单条对象 / 创立菜单对象 / 创立菜单项选择项对象 / 创立单项选择选项 简单); 中等); 困难); / 创立一个按钮组 / 将单项选择按钮添加到按钮组中 group.add(easy_item); group.add(middle_item); group.add(hard_item); / 将单项选择按钮添加到菜单中 difficulty_menu.add(easy_item); difficulty_menu.add(middle_item);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号