1.extends Thread 类
2.实现Runable接口
3.实现Callable接口通过FutureTask包装器来创建Thread线程;
ps:(如下图)
1. 创建一个类实现Callable接口,实现call方法。这个接口类似于Runnable接口,但比Runnable接口更加强大,增加了异常和返回值。
2. 创建一个FutureTask,指定Callable对象,做为线程任务。
3. 创建线程,指定线程任务。
4. 启动线程
线程生命周期:
创建-->start()-->就绪--> 运行(遇到阻塞-->解决后-->--回到就绪)-->结束
启动线程:
new Thread.start().
new Thread(new Runable() ).start();
阻断当前线程: Thread.join(); 只有当当前线程执行完毕后,处理其他线程.且必须写在start().后面