本帖最后由 陈丽莉 于 2013-1-11 21:01 编辑
我认真看了一下毕老师那段的视频,是这样的,老师主要讲的是可以用单独的类封装线程和你贴的代码这样,匿名类封装。重点是匿名类可以有这两种方法,所以就着那三个循环就演示了一下,并没有整合这个小代码。毕老师前面也讲过,当要开启主线程外的其他线程时,是要先开启其他线程,再运行主函数中的循环代码,这样才能一起执行的,这点在其他线程的例子中和前面的视频中都有体现。
当将两个匿名类的线程都放在主函数循环前开启时,只要将循环的临界值增大一些,就可以看到三个线程交替运行了。
我这里改成了300,代码如下:
public class ThreadTest
{
public static void main(String[] args)
{
new Thread()
{
public void run()
{
for(int x=0; x<300; x++)
{
System.out.println(Thread.currentThread().getName()+"....."+x);
}
}
}.start();
Runnable r = new Runnable()
{
public void run()
{
for(int x=0; x<300; x++)
{
System.out.println(Thread.currentThread().getName()+"....."+x);
}
}
};
new Thread(r).start();
for(int x=0; x<300; x++)
{
System.out.println(Thread.currentThread().getName()+"....."+x);
}
}
}
运行结果如图:
|
|