Thread
package com.thread;
/**
* @author 邓亚非
*/
public class TestThread extends Thread {
@Override
public void run() {
System.out.println("用Thread类创建线程");
}
}
Runnable
package com.thread;
/**
* @author 邓亚非
*/
public class TestRunnable implements Runnable{
@Override
public void run() {
System.out.println("使用Runnable接口创建线程");
}
}
区别
实现了Runnable接口比继承Thread类具备更多的优势
1:适合多个代码的线程去共享一个资源
2:可以避免java中的单继承的局限性
3:解耦
4:在线程池中只能放入Runnable和Callable类线程,不能直接放入继承Thread类的线程