package itat;
public class Example9_3 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Bank bank=new Bank();
bank.setMoney(300);
bank.kuaiji.start();
bank.chunai.start();
}
}
class Bank implements Runnable{
private int money=0;
Thread kuaiji,chunai;
Bank(){
kuaiji=new Thread(this);
kuaiji.setName("会计");
chunai=new Thread(this);
chunai.setName("出纳");
}
public void setMoney(int mount){
money=mount;
}
public void run(){
while(true){
money=money-50;
if(Thread.currentThread()==kuaiji){
System.out.println("我是"+kuaiji.getName()+"现在有:"+money+"元");
if(money<=150){ System.out.println("我是"+kuaiji.getName()+"进入死亡状态");
return;
}
}else if(Thread.currentThread()==chunai){
System.out.println("我是"+chunai.getName()+"现在有:"+money+"元");
if(money<=0){
return;
}
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}