javaThread学习(chapter1—线程的创建)

时间:2022-12-25 10:38:15

javaThread学习(chapter1—线程的创建)

一:创建多线程

1:继承Thread,重写父类的run 方法

public class MyThread extends Thread{

@Override
public void run() {
super.run();
System.out.println("start run");
}
}
public class Main {

public static void main(String args[]) {
MyThread myThread= new MyThread();
myThread.start();
}

}
查看源码发现Thread 实现了Runnable 接口。
使用继承Thread的方法创建线程时,有一个缺点,java 本身只支持单继承,所以上面的MyThread 不能再继承别的类,所以推荐使用另一个方法。

2:实现Runnable 接口

public class CoThread implements Runnable {

@Override
public void run() {
System.out.println("start");
}
}
实现了Runnable接口并不能单独运行,而是要依靠Thread 的构造

javaThread学习(chapter1—线程的创建)

public class Main {

public static void main(String args[]) {
Thread thread = new Thread(new CoThread());
thread.start();
}

}

这里还有一个很奇怪的是, 上面的例子中 MyThread 继承了Thread,从而也实现了Runnable的接口,所以也可以这么调用 ,以后看到这样写,也不要觉得奇怪

        Thread thread = new Thread(new MyThread());
thread.start();