实现Runnable接口来创建多线程

本文详细讲解了如何通过实现Runnable接口创建多线程,并深入剖析了Thread类的底层源码,包括Runnable接口的使用和Thread构造函数中的target引用。读者将理解如何启动线程以及线程执行的实际过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实现Runnable接口来创建多线程


在这里插入图片描述

Thread的底层源码分析

public class main{
    public static void main(String[] args){
        dog do2 = new dog();
        Thread thread0 = new Thread(do2);
        thread0.start();
    }
}

class dog implements Runnable{
    @Override
    public void run() {
        System.out.println("当前的线程为:"+Thread.currentThread().getName());
    }
}


//Thread的底层源码是如下面所示的:
class thread implements Runnable{
    private Runnable target;//因为向上转型,所以可以用接口类型的引用指向实现了接口的类的对象实例。

    public thread(Runnable target){
        this.target = target;
    }

    @Override
    public void run() {
        if(target != null){
            target.run();
        }
    }



    public void start(){
        this.start0();
    }
    public void start0(){
        this.run();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值