教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> > 计算机软件及应用> Java多线程与Applet

Java多线程与Applet

上传者:翟龙军
|
上传时间:2015-04-21
|
次下载

Java多线程与Applet

1、应用多线程技术设计一个如下功能的程序:在窗体工作区域有10个小鸟图像在独立运动,每个小鸟受控于一个线程,如果某个小鸟与其它小鸟碰撞,则分别向反方向运动。 2、设计一个小应用程序,该程序能选择自由绘画,自由画椭圆,自由画直线。

安徽师范大学

实验报告

专业名称 11计科 课程实验名称 多线程与Applet 姓 名

学 号 110704012

1、应用多线程技术设计一个如下功能的程序:在窗体工作区域有10个小鸟图像在独立运动,每个小鸟受控于一个线程,如果某个小鸟与其它小鸟碰撞,则分别向反方向运动。 2、设计一个小应用程序,该程序能选择自由绘画,自由画椭圆,自由画直线。

一、实验目的

掌握多线程程序和小应用程序设计方法。

二、实验内容

1应用多线程技术设计一个如下功能的程序:在窗体工作区域有10个小鸟图像在独立运动,每个小鸟受控于一个线程,如果某个小鸟与其它小鸟碰撞,则分别向反方向运动。

2. 设计一个小应用程序,该程序能选择自由绘画,自由画椭圆,自由画直线。

三. 实验过程和步骤

(作业要求:程序源码及运行结果截图,该文档文件名为你的姓名加上你的学号)

1、多线程程序

Cage.java

import java.awt.Button;

import java.awt.FlowLayout; import java.awt.Frame; import java.awt.Graphics;

import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent;

public classextends Frame implements ActionListener { Button quit = new Button("Quit"); Button start = new Button("Start"); Button stop = new Button("Stop"); Bird birds[] = new Bird[10];

public Cage() {

super("Cage with Birds");

1、应用多线程技术设计一个如下功能的程序:在窗体工作区域有10个小鸟图像在独立运动,每个小鸟受控于一个线程,如果某个小鸟与其它小鸟碰撞,则分别向反方向运动。 2、设计一个小应用程序,该程序能选择自由绘画,自由画椭圆,自由画直线。

}

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) { System.exit(0); } });

setLayout(new FlowLayout()); add(quit);

quit.addActionListener(this); add(start);

start.addActionListener(this); add(stop);

stop.addActionListener(this); validate();

setSize(300, 300); setVisible(true);

for (int i = 0; i < birds.length; i++) {

int x = (int) (getSize().width * Math.random()); int y = (int) (getSize().height * Math.random()); birds[i] = new Bird(this, x, y); }

for (int i = 0; i < birds.length - 1; i++) { for (int j = i + 1; j < birds.length; j++) { int xx = Math.abs(birds[i].x - birds[j].x); int yy = Math.abs(birds[i].y - birds[j].y); if (xx <= 30 && yy <= 40) {

int x = (int) (getSize().width * Math.random()); int y = (int) (getSize().height * Math.random()); birds[i] = new Bird(this, x, y); } } }

public void actionPerformed(ActionEvent ae) { if (ae.getSource() == stop)

for (int i = 0; i < birds.length; i++) birds[i].halt();

if (ae.getSource() == start)

for (int i = 0; i < birds.length; i++) { birds[i].halt();

birds[i] = new Bird(this, birds[i].x, birds[i].y); }

if (ae.getSource() == quit)

1、应用多线程技术设计一个如下功能的程序:在窗体工作区域有10个小鸟图像在独立运动,每个小鸟受控于一个线程,如果某个小鸟与其它小鸟碰撞,则分别向反方向运动。 2、设计一个小应用程序,该程序能选择自由绘画,自由画椭圆,自由画直线。

System.exit(0);

}

public void paint(Graphics g) {

for (int i = 0; i < birds.length; i++) if (birds[i] != null) birds[i].draw(g); }

public static void main(String args[]) { new Cage(); }

}

Bird.java

import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit;

public class Bird extends Thread {

int xdir = 2 * (1 - 2 * (int) Math.round(Math.random())); int ydir = 2 * (1 - 2 * (int) Math.round(Math.random())); boolean running = false; Cage cage = null; int x, y;

Image bird = Toolkit.getDefaultToolkit().getImage( "F:/workspace/example/src/thread/bird.png");

public Bird(Cage _cage, int _x, int _y) { cage = _cage; x = _x; y = _y; start(); }

public void start() { running = true; super.start();

1、应用多线程技术设计一个如下功能的程序:在窗体工作区域有10个小鸟图像在独立运动,每个小鸟受控于一个线程,如果某个小鸟与其它小鸟碰撞,则分别向反方向运动。 2、设计一个小应用程序,该程序能选择自由绘画,自由画椭圆,自由画直线。

}

public void halt() { running = false; }

public void run() { while (running) { move(); iscash(); try {

sleep(50);

} catch (InterruptedException ie) {

System.out.println("Thread interrupted"); }

cage.repaint(); } }

public void move() { x += xdir; y += ydir;

if (x > cage.getSize().width-30) { x = cage.getSize().width-30; xdir *= (-1); }

if (x < 0) {

x=0;

xdir *= (-1); }

if (y > cage.getSize().height-40) { y = cage.getSize().height-40; ydir *= (-1); }

if (y < 40){ y=40;

ydir *= (-1); } }

public void iscash() {

for (int j = 0; j < cage.birds.length; j++)

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注

爆破方案2
[宝典]石油化工英语常用缩写46185
煤炭资源税从价计征在即:清理收费、平衡地方利益决定改革成败-21世纪经济报道
论文模版 新能源―――生物能源
神华煤炭产量拟减5000万-6000万吨-新京报
石油机械论文石油机械论文:化工装备管实际文:试论石油化工企业装备[优质文档]
生物制药行业竞争格局及搅扰素市场范围[新版]
发酵类制药工业废水治理工程技术规范编制说明
经济学论文 :制药行业品牌管理研究
技术发明与技术革新
AP0102 Linking an FPGA Project to a PCB Project
2011-2015年中国煤炭物流行业市场前景及投资分析预测报告
低碳经济下的保定市新能源产业研究
湖北京山轻工机械股份有限公司二〇〇九年三季度业绩预告修正公告
内蒙君正年报(601216)年度报告2011年(石油化工收益分配)内蒙古君正能源化工股份有限公司_九舍会智库
科技之路 制药机械能否走向光明-
[新版]石油化工
某新能源有限公司大功率绿色照明项目可行性研究报告
煤矿应急救援预案_1
电气工程导论
论我国煤炭资源采矿权有偿使用制度的改革与重建(下)——我国煤炭资源采矿权有偿使用制度改革的方向与路径分析
基于图像的pcb板的断路短路检测技术研究
2015-2020年中国海洋经济行业分析与投资战略咨询报告
2005年制药装备行业标准项目计划汇总表
生物制药 绪论
中国制药装备行业协会文件_22041
sht 3503 2007 石油化工建设工程项目交工技术文件规定培训讲义
翰威特:提升组织能力,支持战略发展——南方石油化工有限公司项目建议书
家蚕化学诱变剂及诱导突变体的筛选
中外著名制药企业案例精讲 林建辉 0807510231

网友关注视频

沪教版牛津小学英语(深圳用) 六年级下册 Unit 7
青岛版教材五年级下册第四单元(走进军营——方向与位置)用数对确定位置(一等奖)
【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
外研版英语三起5年级下册(14版)Module3 Unit1
冀教版小学数学二年级下册第二单元《余数和除数的关系》
七年级英语下册 上海牛津版 Unit9
外研版英语三起6年级下册(14版)Module3 Unit1
冀教版小学数学二年级下册1
3.2 数学二年级下册第二单元 表内除法(一)整理和复习 李菲菲
小学英语单词
沪教版牛津小学英语(深圳用) 四年级下册 Unit 3
二年级下册数学第三课 搭一搭⚖⚖
飞翔英语—冀教版(三起)英语三年级下册Lesson 2 Cats and Dogs
【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
19 爱护鸟类_第一课时(二等奖)(桂美版二年级下册)_T3763925
【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
30.3 由不共线三点的坐标确定二次函数_第一课时(市一等奖)(冀教版九年级下册)_T144342
沪教版牛津小学英语(深圳用) 四年级下册 Unit 12
二年级下册数学第一课
精品·同步课程 历史 八年级 上册 第15集 近代科学技术与思想文化
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣
北师大版数学四年级下册第三单元第四节街心广场
第五单元 民族艺术的瑰宝_16. 形形色色的民族乐器_第一课时(岭南版六年级上册)_T3751175
【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
苏科版数学八年级下册9.2《中心对称和中心对称图形》
沪教版八年级下次数学练习册21.4(2)无理方程P19
沪教版八年级下册数学练习册21.3(2)分式方程P15
人教版二年级下册数学
北师大版八年级物理下册 第六章 常见的光学仪器(二)探究凸透镜成像的规律
七年级英语下册 上海牛津版 Unit3