从本质上说,thread是一个类,而runnable是一个接口。
看看thread的源码:
从上图可以看到,thread是一个类,而这个类继承了runnable的接口。
再看看runnable的源码:
可以看出,runnable并不能实现多线程,需要调用thread的start方法来实现多线程。
看看分别的调用与实现吧。
MyThread
首先创建MyThread继承Thread方法,重写run方法。
public class MyThread extends Thread {
String name;
public MyThread(String name) {
this.name=name;
}
public void run() {
for (int i = 0; i <10 ; i++) {
System.out.println("Thread start:"+this.getName()+",i="+i);
}
}
}
调用:
public static void main(String[] args) {