Java实现Runnable接口创建多线程
程序员文章站
2022-05-05 16:41:50
...
Java实现Runnable接口创建多线程
通过继承Thread类,实现多线程,但是,这种方式有一定的局限性,因为,Java中只支持单继承,一个类一旦继承了某个父类,就无法再继承Thread类
比如,学生类Student继承了Person类,就无法通过继承Thread类,创建线程
针对这种情况,Thread类提供了另外一个构造方法Runnable target
其中,Runnable是一个接口,它只有一个run()方法
当通过Thread类的Runnable target构造方法,创建线程对象时,只需为该方法传递一个实现了Runnable接口的实例对象,这样,创建的线程将调用实现了Runnable接口中的,run()方法作为运行代码,而不需要调用Thread类中的run()方法
示例,Example03.java
public class Example03{
public static void main(String[] args){
// 创建MyThread的实例对象
// 创建线程对象
// 开启线程,执行线程中的run()方法
MyThread myThread=new MyThread();
Thread thread=new Thread(myThread);
thread.start();
while(true){
System.out.println("main()方法在运行");
}
}
}
class MyThread implements Runnable{
// 线程的代码段,当调用start()方法时,线程从此处开始执行
public void run(){
while(true){
System.out.println("MyThread类的run()方法在运行");
}
}
}
编译运行
代码说明
MyThread类,实现了Runnable接口,并重写了Runnable接口中的run()方法
通过,Thread类的构造方法,将MyThread类的实例对象作为参数传入,可以看出,main()方法和run()方法中的打印语句,都执行了