- <TABLE style="WIDTH: 50%" class=t_table cellSpacing=0 cellPadding=0>
- <TBODY>
- <TR>
- <TD> </TD>
- <TD> </TD></TR>
- <TR>
- <TD> </TD>
- <TD> </TD></TR></TBODY></TABLE>package Thread;
- public class ThreadDemo {
- public static void main(String[] args) {
- Person1 p1 = new Person1();
- Person2 p2 = new Person2();
- p1.start();
- p2.start();
- System.out.println("over");
- }
- }
- class Person1 extends Thread{
- public void run(){
- for(int i=0;i<2;i++){
- System.out.println(i+"person1在运行");
- Thread.yield();
- }
- }
- }
- class Person2 extends Thread{
- public void run(){
- for(int i=0;i<3;i++){
- System.out.println(i+"person2在运行");
- Thread.yield();
- }
- }
- }
复制代码 上面这段线程的代码为什么执行的结果为什么是这样呢?
over
0person2在运行
0person1在运行
1person2在运行
1person1在运行
2person2在运行
1.我认为应该先输出 person1再输出over呢?
2.我先调用的p1.start()为什么是person2在person1前面呢?
|