请阅读下面程序 public class ThreadTest { public static void main(String args[]) throws Exception{ int i=0; Hello t

admin2013-03-01  33

问题 请阅读下面程序     public class ThreadTest {    public static void main(String args[]) throws Exception{        int i=0;        Hello t=new Hello();        while(true) {            System.out.println("Good Moming"+i++);            if (i==2 && t.isAlive()) {                System. out.println("Main waiting for Hello!");                t.join();       //等待t运行结束            }            if(i==5) break;}    }     }    class Hello extends Thread {      int i;      public void run() {          while(true){              System.out.println("Hello"+i++);              if (i==5) break;}}}     为使该程序正确执行,下划线处的语句应是

选项 A、t.sleep()
B、t.yield()
C、t.interrupt()
D、t.start()

答案D

解析 本题考查线程的基本知识。程序中通过继承Thread类来创建线程,而Java中新创建的线程不会自动运行,必须调用线程的start()方法,才能运行该线程。因此,下划线处的语句应调用线程的start()方法,即t.start()。
   Thread类还提供了—些方法对线程进行基本控制,其中,join()方法使当前线程暂停执行,等待调用该方法的线程结束后,再恢复执行:isAlive()方法用来测试线程是否活着。
   因此,本题的正确答案是选项D。
转载请注明原文地址:https://jikaoti.com/ti/jG80FFFM
0

最新回复(0)