Runnable接口和Callable接口的区别说明

戚薇 Java教程 发布时间:2023-05-28 21:27:03 阅读数:2466 1
下文笔者讲述Runnable接口和Callable接口的区别说明,如下所示

Runnable接口和Callable接口的简介

Runnable接口中:
   run()方法的返回值是void
   只需运行run方法 

Callable接口中:
   call()方法是有返回值的
   是一个泛型
   通Future、FutureTask配合
     可以用来获取异步运行的结果

Runnable接口和Callable接口的区别

区别1:使用方法不同
   Runnable需实现run()方法
   Callable需实现call()方法

区别2:产生时间点不同
   Runnable从jdk1.1开始加入
   Callable从jdk1.5开始加入

区别3:
   实现Callable接口的任务线程能返回执行结果
    而实现Runnable接口的任务线程不能返回执行结果

注意事项:
   Callable接口支持返回执行结果
    但是需调用FutureTask.get()方法实现
     此方法会阻塞线程直到获取“将来”的结果
     当不调用此方法时,主线程不会阻塞

区别4:
   Callable接口实现类中run()方法允许将异常向上抛出
    也可直接在内部处理(try…catch);
   Runnable接口实现类中run()方法的异常必须在内部处理掉
    不能向上抛出
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaCourse/202305/6649.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者