Runnable是Thread的接口,在大多数情况下“推荐用接口的方式”生成线程,因为接口可以实现多继承,况且Runnable只有一个run方法,很适合继承。 Thread本身就是实现了Runable接口

在使用Thread的时候只需要new一个实例出来,调用start()方法即可以启动一个线程。
Thread Test = new Thread();
Test.start();

在使用Runnable的时候需要先new一个继承Runnable的实例,之后用子类Thread调用。
Test impelements Runnable
Test t = new Test();
Thread test = new Thread(t);

继承了Thread类 那么实例化该子线程类后 你只能调用一次 start

而实现了 Runnable 接口 这个对象 就可以使用无数次

比如

Test impelements Runnable
Test t = new Test();

你调用一次new Thread(t).start();接着在写new Thread(t).start  这样没有任何问题;

Thread 与Runable区别相关推荐

  1. 【Java之多线程(二)】(***重要***)Java多线程中常见方法的区别,如object.wait()和Thread.sleep()的区别等

    1.Java中Thread和Runnable的区别??? 区别: 在程序开发中只要是多线程肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下好处: 避免点 ...

  2. Android Handler Runnable和Thread之间的区别和联系详解

    在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口:Thread类是在java.lang包中定义的.一个类只要继承了Thread类同时覆写了本类中的run() ...

  3. 进程(Process)和线程(Thread)的区别

    在Linux系统中,进行并行计算编程,经常会将进程(Process)和线程(Thread)混淆,下面我们以表格的形式对二者进行对比,帮助大家能更清晰的理解二者之间的区别. Process和Thread ...

  4. Android开发:Handler Runnable和Thread之间的区别和联系 应用--------------------看完本篇,从此一览无余!...

    http://blog.csdn.net/yanzi1225627/article/details/8582081 在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnab ...

  5. Thread.interrupted()与Thread.currentThread().isInterrupted()区别

    背景 今天在研究ThreadPoolExecutor源码时,在runWorker(Worker w)的方法中有一个判断条件分别用到了Thread.interrupted()和Thread.curren ...

  6. Thread 与Runnable区别详解

    //使用Thread实现线程不能实现资源共享 class MyThread extends Thread { private int ticket=5; private String name; pu ...

  7. android getid,Process.myTid()和Thread.currentThread().getId()区别

    首先,两个方法都是返回线程ID,但结果是不同的,简单的说 android.os.Process.myTid()是系统级的ID Thread.currentThread().getId()是Java级的 ...

  8. jdk1.8源码Thread与Runnable区别

    一.概念 Thread实现了Runnable接口 1 public class Thread implements Runnable { 2 /* Make sure registerNatives ...

  9. Thread.interrupted()与Thread.isInterrupted()的区别

    调用Thread.interrupt()方法并不能真正停止线程,只是在当前线程做了一个中断的状态标志. public class MyThread extends Thread{@Overridepu ...

最新文章

  1. cookie共享子域名
  2. Android应用自动更新功能实现使用AsyncTask!
  3. 头文件的用法及注意事项
  4. 自定义函数_python3基础07函数(自定义)
  5. python selenium 下载文件_Python Selenium —— 文件上传、下载,其实很简单
  6. JavaScript笔记-对wheelDeltaY和deltaY的体会
  7. 物联网思维导图_物联网将如何改变我们的思维方式
  8. ANDROID 获得地理位置
  9. h5直接分享的实现方案
  10. 【bzoj4974】字符串大师 逆模拟KMP
  11. Codeforces-GYM101873 G Water Testing 皮克定理
  12. 一文读懂腾讯云“AI即服务”战略新品“智能云”
  13. 百度文库下载器Python实现
  14. matlab数据存成脚本,matlab的excel的读和写(生成脚本m文件)
  15. 详解 ManualResetEvent(转)
  16. springMVC中415错误
  17. iphone5s已停用连接itunes怎么办?苹果5s已停用连接itunes解决方法
  18. 目前计算机已经发展到哪个阶段,目前电子计算机处于哪个阶段?计算机发展的四个阶段...
  19. 廊坊金彩教育:怎么优化标题
  20. 中南大学2021计算机专硕复试分数线,2021考研:中南大学复试分数线已公布

热门文章

  1. 以史为鉴,可以知兴替 之中国互联网发展、孙正义、美国IT和下一个十年。
  2. 2022护网日记,护网工作内容、护网事件、告警流量分析
  3. 环境变量path作用
  4. Nat Commun | 利用机器学习准确分析FFPE样本的基因组学特征,解锁临床癌症样本的遗传密码...
  5. guns学习记录—eclipse和IDEA部署与启动guns
  6. IMU的FSYNC脚的使用说明
  7. D16 Group 春季6折优惠
  8. Cadence PCB学习 常规标贴焊盘制作
  9. Node安装,改变npm全局默认C盘安装路径
  10. Ubuntu安装aptitude