2.实现Runnable接口(重点)

Thread类也实现了Runnable接口

多线程基础Day03_单继承



多线程基础Day03_测试类_02

多线程基础Day03_java_03

多线程基础Day03_多继承_04

执行,互不影响,交替执行

多线程基础Day03_java_05

快捷输入

多线程基础Day03_单继承_06

实际上方法一和方法二相同,查看Thread类源码发现,他也继承Runnable接口,方法二通过一个代理Thread,把runnable接口的实现类丢进去调用了start,本质上和方法一直接thread.start()相同,只不过传入了一个对象



Runnable接口里只有一个run方法

推荐方法二,因为Java是单继承

一个儿子只能有一个爸爸,但是一个爸爸可以有多个儿子

但接口可以多继承,所以推荐runnable

多线程基础Day03_测试类_07



现在把TestThread2改成用Runnable接口实现,其他都不用动

多线程基础Day03_接口实现_08

多线程基础Day03_多继承_09



小结

多线程基础Day03_测试类_10

创建一个测试类,实现多个线程操作同一个对象

多线程基础Day03_接口实现_11

多线程基础Day03_单继承_12

一个并发问题

多线程基础Day03_单继承_13