大厂面试题-Thread和Runnable的区别

目录

问题解答

面试点评


问题解答

Thread和Runnable接口的区别有四个

1.Thread是一个类,Runnable是接口,因为在Java语言里面的继承特性,接口可以支持多继承,而类只能单一继承。

所以如果在已经存在继承关系的类里面要实现线程的话,只能实现Runnable接口。

2.Runnable表示一个线程的顶级接口,Thread其实是实现了Runnable这个接口,我们在使用的时候都需要实现run方法。

3.站在面向对象的思想来说,Runnable相当于一个任务,而Thread才是真正处理的线程,所以我们只需要用Runnable去定义一个具体的任务,然后交给Thread去处理就可以了,这样达到了松耦合的设计目的。

4.接口表示一种规范或者标准,而实现类表示对这个规范或者标准的实现,所以站在线程的角度来说,Thread才是真正意义上的线程实现。

Runnable表示线程要执行的任务,因此在线程池里面,提交一个任务传递的类型是Runnable

总的来说,Thread只是实现了Runnable接口并做了扩展,所以这两者没什么可比性。

面试点

有些问题真的是为了面试而面试,可能这个问题本身毫无考察的价值。但是不专业的面试太多了,所以我们只能准备充分。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值