- 课程链接:https://coding.imooc.com/learn/list/362.html
- 课程名称:线程八大核心+Java并发原理精讲及企业级并发解决方案
- 章节名称:
- 第2章:线程八大核心纵观全貌
- 3-1创建新线程
- 第2章:线程八大核心纵观全貌
- 讲师姓名:悟空
- 时间:2022-09-13 23:14
课程内容
-
实现多线程的方法是1种还是2种,还是4种?
-
Oracle官网文档说有两种方法
-
实现Runnable接口
public class RunableStyle implements Runnable { @Override public void run() { System.out.println("Runable style"); } public static void main(String[] args) { new Thread(new RunnableStyle()).start(); } }
-
继承Thread类
public class ThreadStyle extends Thread { @Override public void run() { System.out.println("Thread style"); } public static void main(String[] args) { new ThreadStyle().start(); } }
-
两种方法的对比
- 实现
Runnable
接口更好一些 - 继承
Thread
有什么缺点- 线程实现方法都是
run()
方法,这个方法应该和线程的创建与运行机制相隔离,即解耦,但继承这个类,重写run()
方法,使得线程类本身与业务代码绑定在了一起 - 如果想新建一个任务,就必须要创建一个新的线程,而这个过程非常消耗系统资源
- 而使用
Runnable
接口就可以利用后续的线程池工具,可以完全避免上述问题
- 线程实现方法都是
- 实现
-
-
学习心得
其实创建线程的方法与方式是每一本Java
入门书籍必讲的内容,但如果很长时间没有复习Java
基础知识,那么这些内容是很容易忘记的