主方法中的三遍main thread放在后面运行是随机的吗?我运行出来的是随机的
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | package com.imooc.runnable; class Cat implements Runnable{ @Override public void run() { for ( int i= 0 ;i< 3 ;i++) { System.out.println(Thread.currentThread().getName()+ "A cat" ); } } } class Dog implements Runnable{ @Override public void run() { for ( int i= 0 ;i< 3 ;i++) { System.out.println(Thread.currentThread().getName()+ "A dog" ); } } } public class FreeTest2 { public static void main(String[] args) { Cat cat= new Cat(); Dog dog= new Dog(); Thread th1= new Thread(cat); Thread th2= new Thread(dog); th1.start(); th2.start(); for ( int i= 0 ;i< 3 ;i++) { System.out.println( "main thread" ); } } } |
1
收起
正在回答
3回答
同学你好,如果将for循环放在第一句,那么会先执行输出main thread,然后后面的两个线程再随机。因为执行主线程时,后面两个线程还没有启动。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快!
Java零基础入门18
- 参与学习 人
- 提交作业 7317 份
- 解答问题 14452 个
想要入门学编程?多年一直活跃在编程语言排行版前列的Java是一个很好的选择。本路径将从Java基础语法、面向对象、常用工具类三部分,为你开启软件开发的大门!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧