线程创建方式继承Tread类 和实现Runnable接口
继承Tread类:
将类声明为 Thread 的子类,该子类应重写 Thread 类的 run 方法。接下来可以分配并启动该子类的实例。
class UserThread extends Thread{
@Override
public void run(){
......
}
}
UserThread mt=new UserThread();//创建线程
mt.start();//启动线程
实现Runnable接口
class UserThread implements Runnable{
@Override
public void run(){
......
}
}
UserThread mt=new UserThread();
Thread td=new Thread(mt);//创建线程
td.start();//启动线程
两种方法比较: 敲黑板!!!
1.Runnable 方式可以避免Thread方式由于java 单继承特性带来的缺陷;
2.Runnable 的代码可以被多个线程(Thread实例)共享,适合于多个线程处理同一资源的情况;