第六题: 分析以下程序运行结果,说明原理。(没有分析结果不得分)
public class ThreadTest {
public static void main(String args[]) {
MyThread t = new MyThread();
t.run();
t.start();
System.out.println("A");
}
}
class MyThread extends Thread {
public void run() {
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
}
System.out.println("B");
}
}
* @author
* 答:B A B
* 原因:1.t.run():调用MyThread里的方法run(),这时主线程休眠3秒后打印B;
* 2.t.start():启动线程MyThread, 并执行方法run(),这时线程t休眠3秒后打印B;
* 3.在线程t执行run方法的时候,主线程同时执行System.out.println("A"); 打印A, 因为2要休眠3秒,所以先打印出A。
|
|