说一下 runnable 和 callable 有什么区别?
What is the difference between Runnable and Callable?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: medium
分类: Concurrency
标签: Runnable, Callable, Future, Async Result
参考答案摘要
答案 有点深的问题了,也看出一个Java程序员学习知识的广度。 Runnable接口中的run()方法的返回值是void,它做的事情只是纯粹地去执行run()方法中的代码而已; Callable接口中的call()方法是有返回值的,是一个泛型,和Future、FutureTask配合可以用来获取异步执行的结果。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。