Thread actor=new Thread(new Actor(),"Mr.Thread");
为什么如题的代码运行结果不对 编译器也不报错呢
为什么如题的代码运行结果不对 编译器也不报错呢
2016-10-25
package com.imooc.concurrent;
public class Actor extends Thread {
public void run() {
System.out.println(getName() + "is an actor");
int count = 0;
boolean a=true;
while (a){
System.out.println(getName() + "show begins" + (++count));
if (count==100)
{
a=false;
}
if(count%10==0){
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
// System.out.println(getName() + "show begins" + (++count));
System.out.println(getName() + "show is over");
}
public static void main(String[] args) {
// Thread actor = new Actor();
//
// actor.setName("Mr.Thread");
Thread actor=new Thread(new Actor(),"Mr.Thread");
actor.start();
Thread actressThread= new Thread(new Actress(),"Ms.Runnable");
actressThread.start();
}
}
class Actress implements Runnable{
public void run() {
System.out.println(Thread.currentThread().getName() + "is an actor");
int count = 0;
boolean a=true;
while (a){
System.out.println(Thread.currentThread().getName() + "show begins" + (++count));
if (count==100)
{
a=false;
}
if(count%10==0){
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
// System.out.println(getName() + "show begins" + (++count));
System.out.println(Thread.currentThread().getName() + "show is over");
}
}
举报