Thread start()和run()方法的区别??

今天去面试被问蒙圈了。问线程的start()和run()方法有什么区别,我心想这start()方法听名字是线程的启动方法,run()方法就是实现runnable接口或者实现Thread类时覆写的方法,这会有什么区别吗?有可比性吗?工作了8年,第一次听到这问题,真的蒙了。

本着求真务学的态度,回来查一下,莫非是自己见识短浅,孤陋寡闻了?一查网上还是有很多人来比较两个方法的区别的。就如下面这篇写得挺详细。

http://www.runoob.com/note/33934

不查不知道,一查就被气得吐血。启动线程的就是start()方法异步执行,run()方法就是普通方法调用同步执行。

尼玛,用线程你会用run方法运行吗?这俩方法从功能上讲都不一样,有可比性吗?

好好好,小崽子们会玩儿!!!

写此文提示,如果有哪个面试官或者即将成为面试官的人,提问的时候,建议如下问法:

请您说一说线程的start()方法和run()方法。

别加区别,因为俩方法真的没有可比性。

 

线程几个状态面试的时候,也常被问到。

创建态、就绪态、运行态、阻塞态、消亡态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值