问题 单项选择题

下列程序的执行结果是______。
class T5 implements Runnable

public void run()

int i = 0;
While(i<2)

Thread t = Thread.currentThread();
System.out.println(i + t.getName());
i++



public class Testl6

public static void main(String[] args)

Thread t1 = new Thread(new T5(), "TS");
t1.start ();
Thread t = Thread.currentThread();
for(int i = 0; i<3; i++)

System.out.println(I + t.getName());
if(i == 1 && t1.isAlive())
t.yield();


A.Omain
lmam
0T5
1T5
2main

B.Omain
lmam
2main

C.Omain
lmain
2main
0T5
1T5

D.Omain
lmain
0T5
1T5

答案

参考答案:A

解析: 本程序首先创建一个名称为“T5”的线程t1,然后调用Thread.currentThread()方法得到main()方法的线程t,在循环中打印出t的名称,再判断如果t1还活着,就执行t.yield(), main()方法让出CPU,t1获得运行的机会,并执行t1的循环,输出2行包含n名字的字符串, t1执行完毕,回到main()方法中,线程main继续执行,输出最后一行字符串。

多项选择题 案例分析题
单项选择题