题目
Runnable 和 Callable 有什么区别?
答案
![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/202304252115343.png) ![](https://cs-wiki.oss-cn-shanghai.aliyuncs.com/202304252117298.png) - **Runnable 接口 run 方法无返回值;Callable 接口 call 方法有返回值**,是个泛型,和 Future、FutureTask 配合可以用来获取异步执行的结果(调用 `FutureTask.get()` 得到返回结果,不过此方法会阻塞主进程知道调用结果返回)。 - Runnable 接口 run 方法只能抛出运行时异常,且无法捕获处理;Callable 接口 call 方法允许抛出异常,可以获取异常信息