一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了。
两种实现方式的区别和联系:
在程序开发中只要是多线程肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下好处:
· 避免点继承的局限,一个类可以继承多个接口。
· 适合于资源的共享
public class ThreadRunnable implements Runnable{
@Override
public void run() {
for(int i=0;i<100;i++){
System.out.println("runable"+i);
}
System.out.println("runnable运行结束");
}
}
public class First extends Thread{
@Override
public void run() {
for(int i=0;i<100;i++){
System.out.println("thread"+i);
}
System.out.println("thread结束");
}
}