Java创建线程有哪几种方式? 线程有哪些状态?

大家在学习Java过程中会遇见线程方面的知识,Java创建线程有哪几种方式? 线程有哪些状态?
Java创建线程有哪几种方式?
1、通过 Callable和Future创建线程 。
创建 Callable接口的实现类,并实现 call ()方法 ,将作为线程执行 体,并具有返回值 。
创建 Callable实现类的实例 ,用FutureTask类包装 Calable对象 ,FutureTask对象包装 Calable对象的Call()方法 返回值 。
使用 FutureTask对象作为Thread对象创建并启动新线程 。
调用 Futuretask对象的get ()方法获得子线程执行后的返回值 。
2、继承 Thread类创建线程类。
定义Thread类的子类 ,重写这种run方法 ,代表 线程 要完成的任务 。因此 ,run ()方法被称为执行体。
创建Thread类的实例 ,即创建线程对象 。调用线程对象的start ()方法启动线程 。
Java创建线程有哪几种方式
3、通过 Runnable接口创建线程类。
定义runnable接口的实现类,重写 run ()方法 ,run ()方法也是该线程的线程执行体。
创建 Runnable实现类的实例 ,并根据这个实例作为 Thread 的target创建Thread对象 ,Thread对象才是真正的线程 对象 。
调用线程对象的start ()方法启动线程 。
 线程有哪些状态?
1、建立状态。产生线程对象时,不会调用该对象的start方法,这是线程正在创建状态。
2、准备状态。在对线程对象的start方法被调用后,线程进入就绪状态,但此时线程调度程序尚未将该线程设置为当前线程,此时处于就绪状态。执行线程后,等待或睡眠恢复后,仍处于就绪状态。
3、运转状态线程调程器将当前线程设置为就绪状态,此时线程进入运行状态,并开始在run函数中运行代码。
4、阻滞状态当线程运行时,会暂停,通常是为了等待某个时间的发生(比如某种资源已经准备好)。sleep、suspend、wait等方法都会造成线程阻塞。
5、死神状态当线程的run方法执行结束时或在调用stop方法时,线程将终止。不能再用start方法让已死的线程进入就绪。
Java创建线程有哪几种方式? 线程有哪些状态?关注知了堂成都Java培训,带你了解更多Java相关问题和相关干货小知识。


实战教学·项目驱动

开班计划中
  • 软件测试

    2月27日

  • JAVA

    2月15日

  • 前端

    2月25日

  • 网安

    2月25日

24小时报名热线

132 2811 3191

预约试学