{
//new TestThread ().start();
TestThread tt= new TestThread(); //创建TestThread类的一个实例
Thread t= new Thread(tt); //创建一个Thread类的实例
t.start(); //使线程进入Runnable状态
while(true)
{
System.out.println("main thread is running");
}
}
}
class TestThread implements Runnable //extends Thread
{
public void run() //线程的代码段,当执行start()时,线程从此出开始执行
{
while(true)
{
System.out.println(Thread.currentThread().getName() +
" is running");
}
}
}
用Thread继承而来的线程,一个线程序对象只能启动一次,无论调用多少遍start()方法,结果都只有一个线程
实现Runnable接口相对于继承Thread类来说,有如下显着好处:
1、 适合多个相干同程序代码的线程去处理同一资源的情况
2、 可以避免由于
Java单继承特性带来的局限
3、 有利于程序的健壮性,代码能够被多个线程共享
程序清单:ThreadDemo4.java
public class ThreadDemo4
{
public static void main(String [] args)
{
ThreadTest t=new ThreadTest();
//一个线程对象只能启动一次,无论调用多少遍start()方法,结构都只有一个线程
t.start();
t.start();
t.start();
t.start();
}
}
class ThreadTest extends Thread
{
private int tickets=100;
public void run()
{
while(true)
{
if(tickets>0)
上一页 下一页