上篇文章我们介绍了如何使用继承Thread类来使用多线程,今天我们来学习一下实现Runnable接口的方式去使用多线程
我们通过查看Thread类的源码会发现,Thread类也是实现了Runnable接口的
那么我们现在先看看Runnable接口里有什么
我们会发现Runnable接口中只有一个run方法,那这个时候我们去看一下Thread里面的run方法
这时候就会发现,其实我们Thread类的run方法则是重写了Runnable里的run方法
ok,言归正传,我们怎么去使用Runnable接口来使用多线程呢?
直接上代码:
/**
* @author LFDMW
*/
class MyRunnable implements Runnable {
// 第一步我们创建一个类来继承Runnable接口
// 第二部我们需要重写run方法
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println(Thread.currentThread().getName() + "" + i);
}
}
}
class MyRunnableTest {
public static void main(String[] args) {
// 然后我们创建一个实现了Runnable接口的类对象
MyRunnable m = new MyRunnable();
// 创建Thread对象,并将刚才创建的类对象当做构造参数传递
Thread t1 = new Thread(m);
t1.setName("线程1-");
// 然后调用start方法即可开启线程调用run方法
t1.start();
Thread t2 = new Thread(m);
t2.setName("线程2-");
t2.start();
Thread t3 = new Thread(m);
t3.setName("线程3-");
t3.start();
}
}
我们实现Runnable接口使用多线程的步骤为:
①:创建一个类来实现Runnable接口
②:重写run方法
③:创建这个类对象
④:把创建出来的这个类对象当做构造参数去创建Thread对象
⑤:使用创建出来的Thread对象去调start方法即可开启线程调用run方法
// 因为start方法是在Thread类中
那么到这里一个简单的实现Runnable接口去使用多线程的代码就完成了,我们之后的文章中会继续讲解其他方式去使用多线程