创建线程
1继承thread类
1.1定义一个类继承thread
1.2重写run方法
1.3创建子类对象,就是创建线程对象
1.4调用start方法,开启线程并让线程执行,同时还会告诉jvm去调用run方法
2实现Runnable接口
2.1定义类实现runnable接口
2.2覆盖接口中的run方法,将线程任务定义到run方法中
2.3创建thread类的对象
2.4将Runnable接口的子类对象作为参数传递给Thread类的构造函数
2.5调用thread类的start方法开启线程
实现runnable接口避免了单继承的局限性,所以较为常用
实现runnable接口的方式,更加的符合面向对象,线程分为2部分,一部分线程对象,一部分线程任务,继承thread类,线程对象和线程任务耦合在一起,一旦创建thread类的子类对象,既是线程对象,又有线程任务
实现runnable接口,将线程任务单独分离出来封装成对象,类型就是runnable接口类型
Runnable接口对线程对象和线程任务进行解耦
|
|