多线程的创建 方式一,继承Thread类
-
1.创建一个继承于Thread 类的子类
-
2.重写Thread类的run()->将此线程执行的操作声明在run()中
-
3.创建Thread类的子类对象
-
4.通过此对象调用start()
-
例子:遍历100内的所有偶数
//1.创建一个继承于Thread 类的子类
class MyThread extends Thread {
// 2.重写Thread类的run()
@Override
public void run() {
for (int i = 0; i < 100; i++) {
if(i% 2==0) {
System.out.println(i);
}
}
}
}
public class ThreadTest {
public static void main(String[] args) {
// 3.创建Thread类的子类对象
MyThread t1 = new MyThread();
// 4.通过此对象调用start()①启动当前线程②调用当前线程的run()
t1.start();
// 问题一:我们不能通过直接调用run()的方式启动线程。
// t1.run();
// 问题二:再启动一个线程,遍历100以内的偶数
// 不可以让执行过一次的start()执行第二次,会报错IllegalThreadStateException
// t1.start();
// 我们需要重新创建一个线程的对象
MyThread t2 = new MyThread();
t2.start();
// 如下操作仍然在main线程下执行
for (int i = 0; i < 100; i++) {
if(i% 2!=0) {
System.out.println("**************");
}
}
}
}