(一)多线程定义:如果一个进程中同时运行了多个线程,用来完成不同的工作,则称之为“多线程”;多个线程交替占用CPU资源,而并非真正的并行执行
(二)多线程的实现方法:
(1)继承Thread类
- 定义一个类MyThread继承Thread类
- 在MyThread类中重写run()方法
- 创建MyTread类的对象
- 启动线程
注意:
重写run()方法的原因:因为run()是用来封装被线程执行的代码
Run()和Start()的区别:
run():封装线程执行的代码,直接调用,相当于普通方法的调用
Start():启动线程,然后由JVM调用此线程的run()方法
(2)实现Runnable接口
1,定义一个类MyRunnable实现Runnable接口
2,在MyRunnable类中重写run()方法
3,创建MyRunnable类的对象
4,创建Thread类的对象,把MyRunnable对象作为构造方法的参数
5,启动线程
(三)以上,Runnable接口更好:
1,避免了java单继承的局限性
2,适合多个相同程序的代码去处理同一个资源的情况,把线程和程序的代码和数据有效分离,较好的体现了面向对象的设计思想