为什么我的主线程永远快啊?

为什么我的主线程永远快啊?

class MyThreadThree extends Thread{
	public void run() {
		for(int i=1;i<=100;i++) {
		System.out.println(getName()+"正在执行第"+i+"次!");
		}
	}
}
public class JoinDemo {

	public static void main(String[] args) {
		for(int i=1;i<=300;i++) {
			System.out.println("主线程2运行第"+i+"次!");
		}
		MyThreadThree mtt=new MyThreadThree();
		mtt.start();
		try {
			mtt.join();
		} catch (InterruptedException e) {
		
			e.printStackTrace();
		}
		for(int i=1;i<=10;i++) {
			System.out.println("主线程运行第"+i+"次!");
		}
		System.out.println("主线程运行结束!");

	}

}

只要我的主线程输出写在前面,就永远是在前面执行,没有课程中的可能会交替执行情况啊????

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
提问者 慕容2892559 2020-04-21 21:56:15

我好像懂了,是不是因为主线程2开始的时候mtt线程并没有开始,所以不可能交替?

  • 同学你好,同学的理解是正确的。主方法中执行完300次for循环,程序才会往下执行,开启mtt线程。祝学习愉快~
    2020-04-22 10:11:44
  • 提问者 慕容2892559 回复 好帮手慕阿慧 #2
    好的,明白。
    2020-04-22 10:14:16
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师