首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列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
75
问题
请完成下列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全国计算机二级
相关试题推荐
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是
有两个关系R和S如下:由关系R通过运算得到关系S,则所使用的运算为
下面描述中不属于数据库系统特点的是
下列叙述中正确的是
设有S(学号,姓名,性别)和SC(学号,课程号,成绩)两个表,用下列SQL语句检索选修的每门课程的成绩都高于或等于85分的学生的学号、姓名和性别,正确的是
下面程序的运行结果是:SETTALKOFFn=1procl(n)?n+2PROCEDUREproc1PARAMETERSnFORk=2TO4n=n+kENDFORRETURN
下列程序段执行时在屏幕上显示的结果是DIMEa(6)a(1)=1a(2)=1FORi=3TO6a(i)=a(i.1)+a(i一2)NEXT?a(6)
下列关于视图的说法中,不正确的叙述是()。
getSize().width指的是什么?
随机试题
正常胎心基线变异范围是
下列关于司法拘留、行政拘留与刑事拘留的表述,哪一项是正确的?(2005年试卷2第27题)
甲因遭受强奸住院治疗一个多月,出院后仍长期精神恍惚,后经多方医治才恢复正常。在诉讼过程中,甲提起附带民事诉讼。下列哪些赔偿要求具有法律依据?()
商品房销售代理主要有()。
防水混凝土结构中迎水面钢筋保护层厚度最小应为()mm。
提货单、运货单、仓库栈单以及商业汇票都属于商品证券。
下列不属于田径比赛项目的是()。
节度使
采用两个8237ADMA控制器级联后,可使DMA通道扩充到
TheMysteryoftheNazcaLines[A]IfyouvisitthePeruviancoastaldesertfromnorthtosouth,youwillnotethatsporadica
最新回复
(
0
)