实际项目中以 实现 Runnable接口为主
使用Thread实现多线程,需要extends Thread类,而java中一个类只能extends一个类,所以限制了类的继承
使用Runnable则是实现接口,对类的原有功能并没有影响,因为java中一个类可以implements 很多接口
Thread不利用资源的共享,Runnable则可以,使用Runnable共享资源时,主要是采用如下框架
class RunTest implements Runnable(){
public void run(){
...........................
}
.....................
public static void main(String[] args){
RunTest rt = new RunTest();
Thread t1 = new Thread(rt);
Thread t2 = new Thread(rt);
t1.start();
t2.start();
}
}
因为两个线程都是使用的 rt 中的run,所以实现了资源共享,如果继承Thread类则无法实现资源共享