Runnable与Callable的区别

编写多线程程序是为了实现多任务的并发执行,从而能够更好地与用户交互。一般有三种方法,Thread,Runnable,Callable.

Runnable和Callable的区别是:
     (1)Callable规定的方法是call(),Runnable规定的方法是run().
     (2)Callable的任务执行后可返回值,而Runnable的任务是不能返回值的
     (3)call方法可以抛出异常,run方法不可以
     (4)运行Callable任务可以拿到一个Future对象,表示异步计算的结果。它提供了检查计算是否完成的方法,以等待计算的完成,并检索计算的结果。通过Future对象可以了解任务执行情况,可取消任务的执行,还可获取执行结果。

原文地址:https://www.cnblogs.com/zengxianxi/p/3607985.html