class ThreadTest01 implements Runnable {
int num = 100;
// 2、覆盖接口中的run方法。。
@Override
public void run() {
while (true) {
/*
* 格式: synchronized(锁对象){ //需要同步的代码 }
*/
synchronized (Demo1.class) {
if (num<= 0) {
break;
}
try {
Thread.sleep(1);
System.out.println(
Thread.currentThread().getName() + "出售了" + (1000 - num + 1) + "张票,还剩余:" + (--num) + "张");
/*
* this.notify(); this.wait();
*/
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
这个我把if语句里面的num<=0 break; 改成num>0; 为什么程序一直在运行,还有负数啊,求解释?
慕工程2701759
qq_雨过之后_1
慕姐8946757
相关分类