目录
1.继承 Thread, 重写 run
2.实现 Runnable, 重写 run
3.继承 Thread, 重写 run, 使用匿名内部类
4.实现 Runnable, 重写 run, 使用匿名内部类
5.使用 lambda 表达式
6.请回答以下代码的输出, 并解释原因
1.继承 Thread, 重写 run
2.实现 Runnable, 重写 run
3.继承 Thread, 重写 run, 使用匿名内部类
4.实现 Runnable, 重写 run, 使用匿名内部类
5.使用 lambda 表达式
6.请回答以下代码的输出, 并解释原因
public static void main(String[] args) {
Thread t = new Thread(new Runnable() {
@Override
public void run() {
System.out.println("1");
}
});
t.start();
System.out.println("2");
}
此题可能输出结果为 2 1 或 1 2;
由于打印1 和 打印2分别在不同的线程中执行,具体先执行哪个线程是由系统决定的,且无法预测,所以两种情况都有可能。