当前位置:IT认证>软件水平

问题:[填空题]

[填空题] 通过继承Thread创建线程,在主控程序中同时运行两个线程Thread1和Thread2。请在下面横线处填入代码完成此程序。 public class ThreadTest public static void main(String args[]) new TestThread("Threadl").start(); 【7】 class TestThread extends Thread() public TestThread(St

  

参考答案:

newTestThread(“Thread2”).start();

  参考解析

程序中,类ThreadTest的main方法中生成了两个TestThread类的线程对象Thread1和Thread2,并在创建后马上调用start方法启动这两个线程。类TestThread是类Thread的子类,它首先定义了一个构造方法,调用父类的构造方法为线程对象命名。由于类Thread创建的线程不做任何事情(它的run()方法是空的),所以对于继承子类Thread的子类来说,必须重写run()方法。本例中,类TestThread中的第二个方法就是run()方法,它重写了类Thread中的run()方法。run()方法中是一个3次的循环,每次循环中,显示循环的次数和当前正在运行的线程的名字,然后休眠1000毫秒。运行程序的结果是两个线程的名字交替显示,每一个线程运行到输出语句时,将在屏幕上显示自己的名字,执行到sleep语句时将休眠1000毫秒。线程休眠时,并不占用CPU,其他线程可以继续运行。一旦延时完毕,线程将被唤醒,继续执行下面的语句。这样,就实现了交替显示。在循环结束后,显示“已结束”及线程表。

微信端