Runnable接口有个缺点,它的run方法没有返回值并且不能抛异常,如果需要线程执行完返回一个结果以及希望能抛出异常,那么还有一个接口刚好能弥补这两个缺点:Callable,它跟Runnable都是任务接口,使用上基本相同