Thread vs Runnable in Java
来源:互联网 发布:网络言论自由辩论 编辑:程序博客网 时间:2024/06/12 21:02
在Java中,可以通过继承Thread类或实现Runnable接口(暂时不提Callable接口)实现一个线程,那具体这两者之间有什么区别呢,什么时候该继承Thread类,什么时候该实现Runnable接口?
Thread和Runnable的不同
- Java不支持多继承,这就意味着你继承Thread类后就不能继承其他类了。
- 在面向对象编程中,继承一个类往往意味着对父类进行了修改或者扩展。如果我们没有对Thread类有任何修改或扩展,建议继承Thread。
- Runnable接口表示一个可以被Thread或Executors执行的Task,如果是逻辑分离的任务,建议实现Runnable接口。
- 逻辑分离的Runnable接口Task意味着我们可以复用这个Task,并且可以使用多种多样的方式去执行,此时建议使用Runnable接口。
- 作为一个Task来说,只需要实现一个Runnable接口就能做的事,继承Thread类的所有方法就有点画蛇添足了。
基于以上几点,个人更建议使用Runnable或Callable接口去实现一个线程。
原文链接:Difference between Thread vs Runnable interface in Java
0 0
- Thread vs Runnable in Java
- JAVA多线程Thread VS Runnable详解
- Java多线程之 Thread VS Runnable
- JAVA多线程之Thread VS Runnable
- Java多线程Thread VS Runnable详解
- 2.java线程-thread vs runnable
- Runnable VS Thread
- Thread VS Runnable
- 多线程 Thread VS Runnable
- 多线程 Thread VS Runnable
- Runnable VS Thread
- Thread VS Runnable
- Java多线程之 Thread VS Runnable 【带案例】
- Java 多线程之 Runnable VS Thread 及其资源共享问题
- 【Java基础】——线程Thread VS Runnable
- 【java0006】多线程 - Thread VS Runnable
- 多线程之Thread VS Runnable
- 线程 Thread VS Runnable 基础
- C++ 虚函数
- 解决Raspberry使用vim键盘布局问题
- 5.Servlet生成验证码和重定向实现
- JavaMelody监控Spring Service层和Spring Controller层
- 资料汇总
- Thread vs Runnable in Java
- handler中send和post方法的区别
- 继承
- 2016SDAU课程练习一1002 Problem C
- Java第四次实验要求
- 1019_计算二叉树的高度和结点数
- 占坑补题
- java核心技术卷I-第六章学习笔记
- 修改Eclipse窗口颜色设置