翻阅API以后得知创建线程的方式总共有两种,一种使继承Thread类方式,一种是实现Runable接口方式,现在学习第二种方式。
采用java.lang.Runable也是非常常见的一种,同样只需要重写run方法即可。
步骤如下:
1.定义Runable接口的实现类,并重写该接口的run方法,该run方法的方法体同样是该线程的线程执行体。
2.创建Runable实现类的实例对象,并以此实例作为Thread的target来创建Thread对象(Thread的一个构造方法,参数是Runable实现类对象),该Thread对象才是真正的线程对象。
3.调用线程对象的start方法来启动线程。
// 定义Runable接口的实现类 public class RunableImpl implements Runnable{ // 重写该接口的run方法 @Override public void run() { for (int i = 0; i < 20; i++) { // 打印线程名称 System.out.println(Thread.currentThread().getName() + "-->" + i); } } }
public static void main(String[] args) { // 创建Runable实现类的实例对象 RunableImpl impl = new RunableImpl(); // 以此实例作为Thread的target来创建Thread对象 Thread td = new Thread(impl); // 调用线程对象的start方法来启动线程 td.start(); for (int i = 0; i < 20; i++) { // 打印主线程名称 System.out.println(Thread.currentThread().getName() + "-->" + i); } }
运行截图: