与Runnable接口的区别
- 落地实现方法不同,Runnable接口时run(),Callable接口是call()
- Runnable接口run()方法没有返回值,Callable接口call()方法有返回值
- Callable接口call()方法可以抛异常
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
public class CallableDemo {
public static void main(String[] args) throws ExecutionException, InterruptedException {
FutureTask<Integer> futureTask=new FutureTask<>(()->{
return 100;
});
new Thread(futureTask,"a").start();
System.out.println(futureTask.get());
}
}