简化前:
简化后: 将创建的匿名内部类对象当传参,传给 线程对象(new Thread)
再次简化: 每次new一个Thread线程对象,就会多一次线程
package com.itheima.d1_create;
/**
* 目标: 学会线程的创建方式二, 理解它的优缺点
*/
public class ThreadDemo2Other {
public static void main(String[] args) {
// 3. 创建一个任务对象
// 可以创建Runnable的匿名内部类对象
Runnable target = new Runnable() { // 匿名内部类没有对象名直接new,重写方法
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("子线程执行输出" + i);
}
}
};
// 4. 把任务对象交给Thread(线程类)处理, (创建线程对象)
Thread t = new Thread(target);
// 启动多线程
t.start(); // 从这里13 行才开始多线程, 前面都在创建线程对象
for (int i = 0; i < 10; i++) {
System.out.println("主线程执行输出:" + i);
}
}
}