Java实现Runnable接口创建多线程

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()方法中的打印语句,都执行了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值