class ThreadTest extends Thread
{
public void run()
{
System.out.println(Thread.currentThread().getName()+" is running");
}
}
class Test
{
public static void main(String []args)
{
new ThreadTest().start();
System.out.println("main is running");
}
}
{
public void run()
{
System.out.println(Thread.currentThread().getName()+" is running");
}
}
class Test
{
public static void main(String []args)
{
new ThreadTest().start();
System.out.println("main is running");
}
}
main is running
Thread-0 is running
有什么错误?
输出:
main is running
Thread-0 is running
或
Thread-0 is running
main is running
这个是因为cpu时间片分配的事情~不一定是哪一个先运行~
main is running
Thread-0 is running
为什么?
请不要在乎输出的顺序。呵呵。如果你一定想得到不一样的结果,请向代码中加一句:class ThreadTest extends Thread
{
public void run()
{
System.out.println(Thread.currentThread().getName()+" is running");
}
}
class Test
{
public static void main(String []args)
{
new ThreadTest().start();
Thread.sleep( 1000 );//这句代码是我加的
System.out.println("main is running");
}
}
new ThreadTest().start(); 这句话只是创建了一个线程,并处于就绪状态,但这并不代表它会运行,
只有当它抢到资源(也就是获得时间片)才会运行。
class ThreadTest extends Thread
{
public void run()
{
System.out.println(Thread.currentThread().getName()+" is running");
}
}
public class Test
{
public static void main(String []args) throws InterruptedException
{
new ThreadTest().start();
Thread.sleep(1000);
System.out.println("main is running");
}
}