一、多线程:
(1)进程:当前正在运行的程序,一个应用程序在内存中的执行区域
(2)线程:进程中的一个执行控制单元,也可以有多个线程
(3)一个进程可以有一个线程,也可以有多个线程
(4)多线程:安全性低,效率高
(5)单线程:安全性高,效率低
二、多线程的实现方式
(1)一种方法是将类声明为 Thread 的子类。该子类应重写 Thread 类的 run 方法。创建对象,开启线程。run方法相当于其他 线程的main方法
(2) 另一种方法是声明一个实现 Runnable 接口的类。该类然后实现 run 方法。然后创建Runnable的子类对象,传入到某个 线程的构造方法中,开启线程。
三、既然有了Thread为什么还要有Runnable?
因为类的单一继承,Thread是类,一个类如果继承了Thread类那就不能继承其他类,而Runnable是接口,一个类可以实现
多个接口,同时也可以去继承其他类