Runnable 任务,没有返回值Callable 任务,又返回值Runnable与Callable相同点:1. 都是接口;2. 用来编写多线程程序;3. 都需要调用Thread.start()启动线程不同点:1. 实现Callable接口的任务线程能返回执行结果;而实现Runnable接口的任务线程不能返回结果2. Callable接口的call()方法允许抛出异常;而Runnable接口的run()方法的异常只能在内部消化,不能继续上抛