A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© LLLLL 中级黑马   /  2015-8-26 10:49  /  256 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class  ThreadTest
{
          public static void main(String[] args)
          {
                  new Thread()
                  {
                          public void run()
                          {
                                  for (int x=0;x<=40 ;x++ )
                                  {
                                          System.out.println(Thread.currentThread().getName()+"----"+x);
                                  }
                          }        
                  }.start();
                  for (int x=0;x<=40 ;x++ )
                  {
                          System.out.println(Thread.currentThread().getName()+"----"+x);
                  }
                  Thread t=new Thread()
                  {
                          public void run()
                          {
                                  for (int x=0;x<=40 ;x++ )
                                  {
                                          System.out.println(Thread.currentThread().getName()+"----"+x);
                                  }
                          }
                  };
                  t.start();
          }
}

程序怎么执行?为什么

4 个回复

倒序浏览
前2个线程抢吧,最后那个最后一次行执行完
回复 使用道具 举报
至尊幽蓝 来自手机 中级黑马 2015-8-26 11:23:13
藤椅
先是前两个线程抢,等到主线程的for循环打印那段代码执行完了,第三个线程再加入进来,不管第一个自定义线程执行完没有。但是第三个线程开启时主线程肯定是执行完了。
回复 使用道具 举报
1主线程和第一个thread线程抢,第二个线程t开启是,主线程结束,如果第一个thread没结束继续和t抢。

评分

参与人数 1黑马币 +5 收起 理由
王若行 + 5

查看全部评分

回复 使用道具 举报
好,楼主v587,长知识了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马