1.继承Tread来实现多线程
- 创建一个基于Tread类的子类
- 重写Tread类的run()方法---->把此线程要执行的操作声明在方法内
- 创建当前Tread类子类的对象
- 调用对象的start()方法 ---->该方法会启动线程(调用当前线程的run方法)先启动再调方法
- 不能使用run替代start,否则会使得当前线程合并到main线程中
- 不能让已经start的线程再次执行start操作,否则会报异常
局限性:Java为单继承,所以无法再继承Tread以外其他类
2.实现Runable接口方式
- 创建一个实现Runable接口的类
- 实现接口里的run()方法---->同上
- 创建一个类的对象
- 将此对象作为参数传入到Tread构造器中,创建Tread类的实例
class EvenNumber implements Runable{
public void run(){
/*方法体*/
}
}
public class 主类名字{
public static void main(String[] args){
EvenNumber a=new Evenumber();
Tread t1=new Tread(a);
t1.start();
}
}
匿名写法
匿名写法
new Tread (new Runable(){
public void run(){
/*实现方法*/
}
}).start();
以上内容在b站尚硅谷网课中学习总结