首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列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
55
问题
请完成下列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全国计算机二级
相关试题推荐
有关查询设计器,正确的描述是
假设在表单设计器环境下,表单中有一个文本框,且已经被选定为当前对象,现在从属性窗口中选择Value属性,然后在设置框中输入“={^2001-9-10}-{^2001-8-20}”,请问以上操作后,文本框Value属性值的数据类型是
在数据库设计中,将E-R图转换成关系数据模型的过程属于
下面描述中不属于数据库系统特点的是
在SQL语句中,删除一条记录采用的命令是
使用SQL语句将表S中字段price的值大于30的记录删除,正确的命令是
假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是USE歌手DOWHILE.NO
下列程序段执行时在屏幕上显示的结果是x1=20x2=30SETUDFPARMSTOVALUEDOtestWITHx1,x2?x1,x2PROCEDUREtestPARAMETERSa,b,x=aa=bb=x
在表单设计阶段,以下说法正确的是()。
getSize(),width指的是什么?()
随机试题
A.抗菌药物B.肾上腺糖皮质激素C.血液透析D.免疫抑制剂E.青霉素腹膜透析时并发腹膜炎首选
属无机碘的对比剂是
刘某因盗窃罪被人民法院判处有期徒刑2年缓期2年执行。对此,下列说法中,符合《刑事诉讼法》规定的是()
由外部环境变化引起的贬值或增值是指()。
下列不属于按经济部门分类的财政收入是()。
下列不是法国作家的是()。
使用邮件传送多媒体等信息时,常常需要对邮件内容进行编码。常用的编码方法包括()。
下列各类计算机程序语言中,不属于高级程序设计语言的是()。
TheoriesofHistoryI.Howmuchweknowabouthistory?A.【T1】______existforonlyafractionofman’stime【T1】______B.Thea
A题目询问男士能在运动场待多长时间。上午9点到下午5点共8个小时,所以选A(8小时)。
最新回复
(
0
)