Merge branches 'master' and 'master' of https://github.com/CyC2018/InterviewNotes

This commit is contained in:
CyC2018 2018-08-17 21:22:04 +08:00
commit dc05f51681

View File

@ -184,7 +184,10 @@ public static void main(String[] args) {
mt.start();
}
```
## 三种实现方式的比较
- 实现Runnable接又可以避免Java单继承特性而带来的局限;增强程序的健壮性,代码能够被多个线程共享,代码与数据是独立的;适合多个相同程序代码的线程区处理同一资源的情况。
- 继承Thread类和实现Runnable方法启动线 程都是使用start方法然后JVM虚拟机将此线程放到就绪队列中如果有处理机可用 则执行run方法。
- 实现Callable接又要实现call方法并且线 程执行完毕后会有返回值。其他的两种都是 重写run方法没有返回值。
## 实现接口 VS 继承 Thread
实现接口会更好一些,因为: