class Bank
{
private int sum;
public void save(int num) {
synchronized (this) {
sum+=num;
System.out.println(Thread.currentThread().getName()+sum);
}
}
}
class Cus implements Runnable
{
private int count=300;
private Bank mBank;
public Cus(Bank mBank) {
this.mBank=mBank;
}
@Override
public void run() {
while(true)
if (count>0) {
mBank.save(100);
count-=100;
}
}
}
class TestDemo{
public static void main(String[] args) {
Bank mBank = new Bank();
Cus mCus1 = new Cus(mBank);
Cus mCus2 = new Cus(mBank);
new Thread(mCus1).start();
new Thread(mCus2).start();
}
}