第四周作业-多线程编程

来源:互联网 发布:淘宝绫致时装官方店是 编辑:程序博客网 时间:2024/05/16 14:59
class BankAccount{private static int amount=2000;public void despoit(int m){amount =amount + m;System.out.println("小明存入["+m +"元]");}public void withdraw(int m){amount =amount-m;System.out.println("张新取走["+m +"元]");if (amount <0)System.out.println("***余额不足!***");}public int balance(){return amount;}}class Customer extends Thread{String name;BankAccount bs;public Customer(BankAccount b,String s){name =s;bs =b;}public synchronized static void cus (String name, BankAccount bs){if(name.equals("小明")){try{for(int i =0;i<6;i++){Thread.currentThread();Thread.sleep((int)(Math.random()*300));bs.despoit(1000);}}catch(InterruptedException e){}}else{try{for(int i=0;i<6;i++){Thread.currentThread();Thread.sleep((int)(Math.random()*300));bs.withdraw(1000);}}catch(InterruptedException e){}}}public void run(){cus(name,bs);}}public class AccountTest1{public static void main(String args[])throws InterruptedException{BankAccount bs =new BankAccount();Customer customer1=new Customer(bs,"小明");Customer customer2=new Customer(bs,"张新");Thread t1 =new Thread(customer1);Thread t2 =new Thread(customer2);t1.start();t2.start();Thread.currentThread();Thread.sleep(500);}}

0 0
原创粉丝点击