实现多线程的方法到底是几种?

首先,从不同的角度看有不同的答案

Oracle 官网给出的答案 : 2种

1. 继承Thread类

2. 实现Runnable接口

而观察这两种方法的实现原理,其实本质是一样的

Thread类的run()方法

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

target是一个实现Runnable接口对象

继承Thread类的方式,只是将上面的run()方法重写了而已

常见创建线程的方法,如:使用线程池、计时器、匿名内部类、Lambda表达式等等都没有逃出新建Thread类的本质,只是不同的外部形式

全部评论

相关推荐

10-15 10:57
已编辑
武昌理工学院 FPGA工程师
狠赚笔第一人:老哥学院本没实习还想拿13k学Java狠赚笔呢
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务