- package com.itheima;
- /**
- * 题目:分析以下程序运行结果,说明原理。(没有分析结果不得分)
- * 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 perry
- *
- */
- public class Test5 {
- /*由上面的代码可以运行得出打印的结果是
- * B
- * A
- * B
- *
- * 原因:
- *
- *1.t.run() 是调用MyThread里的方法run() 这时主线程休眠3秒后打印B
- *2.t.start() 是启动线程MyThread, 并且执行方法run() 这时线程t是需要休眠3秒后打印B
- *3.因为2只是启动线程MyTread,启动完之后执行System.out.println("A"); 打印A,
- * 因为2要休眠3秒,所以先打印出A
- *
- *
- *
- *
- *
- *
- *
- *
- *
- *
- *
- *
- */
-
- }
复制代码
|
|