- Java多线程编程核心技术(第3版)
- 高洪岩
- 283字
- 2022-01-07 14:43:57
1.2.5 实现Runnable接口
如果想创建的线程类已经有了一个父类,就不能再继承自Thread类,因为Java不支持多继承,所以需要实现Runnable接口来解决这样的问题。
创建项目t2,继续创建一个实现Runnable接口的MyRunnable类,代码如下:
package myrunnable; public class MyRunnable implements Runnable { @Override public void run() { System.out.println("运行中!"); } }
如何使用这个MyRunnable.java类呢?这就要看Thread.java的构造函数了,如图1-15所示。

图1-15 Thread构造函数
在Thread.java类的8个构造方法中,有5个构造方法可以传递Runnable接口。说明构造方法支持传入一个Runnable接口的对象,运行类代码如下:
public class Run { public static void main(String[] args) { Runnable runnable=new MyRunnable(); Thread thread=new Thread(runnable); thread.start(); System.out.println("运行结束!"); } }
运行结果如图1-16所示。

图1-16 运行结果
图1-16所示的运行结果和采用继承Thread类的方法的运行结果没有什么特别之处,输出效果一样:异步执行。