Ø         两种创建线程方法的比较


比较两者的特点和应用领域:

1.直接继承线程Thread类。该方法编写简单,可以直接操作线程,适用于单重继承情况,因而不能在继承其他类.


2.实现Runnable接口。当一个线程已继承了另一个类时,就只能用实现Runnable接口的方法来创建线程,且便于保持程序风格的一致性。

 

下面这是一则简单的多线程程序:

 

package pack.java.thread;
/**
 * 继承Thread类;
 * @author Administrator
 *
 */
public class ThreadDemo extends Thread{
	
	int k = 0;   //初始值;
	
	public ThreadDemo(){
		super();
	}
	public ThreadDemo(int i,String name){
		super(name);
		this.k= i ;
	}
	
	@Override
	public void run() {
		// TODO Auto-generated method stub
		int i  = k;
		while (i<50) {
			System.out.println("i->"+i);
			i +=2;
		}
		System.out.println(getName()+"end!");
	}
	
	public static void main(String []args) {
		//创建线程对象1;
		ThreadDemo threadDemo1= new ThreadDemo(1, "ZhouHaiTao");
		//启动线程1;
		threadDemo1.start();
		
		//创建线程对象2;
		ThreadDemo threadDemo2 = new ThreadDemo(2, "PengXiaoTing");
		//启动线程2;
		threadDemo2.start();
		
		System.out.println("\n活动的线程数:"+activeCount());
	}
}