首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序:运行3个线程,每一个线程有自己的标志,用a,b,c表示,每个线程显示一个“Start”信息和一个“End”信息并且间隔地显示2个“Loop”信息(间隔变化为(0.5-2)秒之间的随机延迟)。 程序运行结果如下:(注:由于时间间
请完成下列Java程序:运行3个线程,每一个线程有自己的标志,用a,b,c表示,每个线程显示一个“Start”信息和一个“End”信息并且间隔地显示2个“Loop”信息(间隔变化为(0.5-2)秒之间的随机延迟)。 程序运行结果如下:(注:由于时间间
admin
2009-01-15
42
问题
请完成下列Java程序:运行3个线程,每一个线程有自己的标志,用a,b,c表示,每个线程显示一个“Start”信息和一个“End”信息并且间隔地显示2个“Loop”信息(间隔变化为(0.5-2)秒之间的随机延迟)。
程序运行结果如下:(注:由于时间间隔为随机数,所以,运行结果的顺序不惟一)
a Start
b Start
c Start
b Loop
a Loop
b Loop
b End
c Loop
a Loop
a End
c Loop
c End
注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
public class ex2_2 implements Runnable {
static char flag2_2 = ’a’;
public static void main(String[] arg) {
ex2_2 obj2_2 = new ex2_2();
Thread thread2_2 = new Thread(obi2_2);
thread2_2.start();
thread2_2 = new Thread(obj2_2);
thread2 2.start();
thread2_2 = new Thread(obi2_2);
thread2_2, start ( );
}
public void run() {
char myflag2_2;
synchronized(this) {
_________________;
}
System.out.println(myflag2_2 +" Start");
for(int i=0; i<2; i++) {
try {
Thread.sleep(rand(500,2000));
System.out.println(myflag2_2 +" Loop");
} catch(InterruptedException ie) {
System.out.println(ie);
}
}
System.out.println(myflag2_2 +" End");
}
final private int rand(int low, int high)
return(_________________);
}
}
选项
答案
myflag2_2 = flag2_2++ ((int)((high-low+1)*(Math.random())))+low
解析
本题主要考查线程的创建与同步和控制随机数产生范围的算法。解题关键是,熟悉线程的概念和使用,线程的同步控制, char类型数据的操作,以及熟悉随机数产生的方法Math.random(),并且能够进一步根据需要控制随机数产生的范围。在本题中,main()方法中创建3个线程,这3个线程使用obj2_2对象。线程调用start()方法来中断,使一个新的线程开始执行,并且调用run()方法。第1空,run()方法为自己设置一个线程的标志,并为下一个线程的使用增加这个标志值,由于此时线程正在处理中,因此在同步块中完成修改标志的语句放在同步块中。第2个空,通过low和high两个参数,控制产生随机数的范围,将基本的数学思想应用于程序设计中。
转载请注明原文地址:https://kaotiyun.com/show/Shnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
在VisualFoxPro中,查询设计器和视图设计器很像,如下描述正确的是
假设已用命令MODIFYMENUmymenu创建了一个菜单并生成了相应的菜单程序,则运行菜单程序的命令是
一个工作人员可使用多台计算机,而一台计算机被多个人使用,则实体工作人员与实体计算机之间的联系是
下列程序段的输出结果是ACCEPTTOAIFA=[123]S=0ENDIFS=1?S
数据字典(DD)所定义的对象都包含于
“教师表”中有“职工号”、“姓名”、“工龄”和“系号”等字段,“学院表”中有“系名”和“系号”等字段,计算“计算机”系教师总数的命令是
在数据管理技术发展的三个阶段中,数据共享最好的是
假设变量a的内容是“计算机软件工程师”,变量b的内容是“数据库管理员”,表达式的结果为“数据库工程师”的是
数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。Ⅰ.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段
关于内存变量的调用,下列说法正确的是
随机试题
关于aVL导联的描述,不正确的是
下列哪项是慢性阻塞性肺疾病发生与病情发展的重要因素是
接触器的主要控制对象是()。
在填筑排水反滤层前,应对坝基覆盖层进行试验分析。对于黏性土,做天然干密度、含水量及塑性指数试验;当塑性指数小于()时,尚需进行颗粒分析。
在Excel2003中,一个工作簿最多可由3张工作表组成。()
我国经济迅速发展,出现了大量的民营经济和个体经济,为了规范会计核算,目前要求所有的经济组织都要设置财务部门。()
重庆市离校两年内未就业的高校毕业生参加就业见习,见习基地应按月为其发放不低于()的基本生活补助。
传递:信息:网络
揭开巴黎公社革命序幕的事件是()。
—Areyoustillthere?—Yes,thestormpreventedus______yesterday.
最新回复
(
0
)