日期:2014-05-20  浏览次数:20721 次

关于JAVA线程的编写
public class MyThread
{
public static void main(String[] args)
{
FristThread ft = new FristThread();
ft.start();
ft.start();
ft.start();
ft.start();
ft.start();
System.out.println(Thread.currentThread().getName());
}
}

class FristThread extends Thread
{
public void run()
{
System.out.println(Thread.currentThread().getName());
}
}
//////////////////////////////////////////////////////////////////////////////////////////////
public class MyThread
{
public static void main(String[] args)
{
FristThread ft = new FristThread();
new Thread(ft).start();
new Thread(ft).start();
new Thread(ft).start();
new Thread(ft).start();
new Thread(ft).start();
System.out.println(Thread.currentThread().getName());
}
}

class FristThread implements Runnable 
{
public void run()
{
System.out.println(Thread.currentThread().getName());
}
}
请问ft都是同一个对象,并都是调用start()函数创建多个进程,但为什么第一个程序就有错误第二个就没有呢?

------解决方案--------------------
第一个你只创建了一个Thread对象。。。启动了5次。。。能不错吗?
第二个你创建了5个Thread对象,接受的都是同一参数。。。分别启动,当然没错了