该
Thread.start()方法启动一个新线程,该线程的入口点就是
run()方法。如果直接调用run(),它将在同一线程中执行。假设调用
Thread.start()将启动一个新的执行线程,则该
run()方法可在其余主方法执行之后(如您的示例)被调用。
将您的main方法更改为调用
th1.start()并重复运行,您会发现有时它会输出:
EXTENDS RUN>>RUNNABLE RUN >>
有时它输出:
RUNNABLE RUN >>EXTENDS RUN>>
取决于Java选择如何安排2个线程。
查看有关此内容的Java教程。



