1、新建状态
Thread t1 = new Thread();
创建之后,就已经有了相应的内存和其他资源,但是还是处于不可运行状态。
2、就绪状态
当一个线程使用.start()启动之后就处于就绪状态,就会在队列中排队等待被调度。此时已经具备运行状态。
3、运行状态
当一个就绪状态的线程被调度而且分配了CPU资源,就进入了运行状态。此时就会自动调用run()。
4、阻塞状态
当一个对象调用了wait() suspend() sleep()方法,线程就会进入阻塞状态。阻塞时,是不进行排队的,直到导致产生阻塞的因素被消除之后,才会进行在队列中排队(就绪状态)。
5、死亡状态
当一个线程对象调用.stop()方法或者run()方法结束的时候,线程就进入了死亡状态,不在具有运行能力。