JUC(五)——Callable
JUC(一)——Locks JUC(二)——深入理解锁机制 JUC(三)——线程安全类 JUC(四)——强大的辅助类讲解 JUC(五)——Callable JUC(六)——阻塞队列 JUC(七)——线程池简单使用 JUC(八)——线程池深入讲解 创建线程的方式一共有四种 1、继承Thread类创建线程 2、实现Runnable接口创建线程 3、使用Callable和Future创建线程 4、使用线程池例如用Executor框架 前面两种大家肯定都了解,这里我们讲解第三种 使用Callable和Future创建线程 Runnable接口和Callable接口的区别 //创建新类MyThread实现runnable接口 class MyThread implements Runnable { @Override public void run ( ) { } } //新类MyThread2实现callable接口 class MyThread2 implements Callable < Integer > { @Override public Integer call ( ) throws Exception { return 200 ; } } 1、是否有返回值 Callable有返回值,返回值类型就是泛型类型 Runnable没有返回值 2、是否抛异常 Callable抛异常