第四周作业-多线程编程
来源:互联网 发布:php study linux 编辑:程序博客网 时间:2024/06/04 18:57
class BankAccount {/** * @param args */private static int amount = 2000; //账户余额最初为2000public void despoit(int m) //定义存款的方法{amount = amount + m;System.out.println("小明存入[" + m +"元");}public void withdraw(int m) //定义取款的方法{if(amount <= 0){System.out.println("***余额不足!***");return;}amount = amount - m;System.out.println("张新取走[" + m + "元]");}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().sleep((int)(Math.random() * 300));bs.despoit(1000);}}catch(InterruptedException e){}}else{try{for(int i = 0;i < 6;i++){Thread.currentThread().sleep((int)(Math.random() * 300));bs.withdraw(1000);}}catch(InterruptedException e){}}}public void run() //定义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().sleep(500); }}
0 0
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业--多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业 多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业-多线程编程
- 第四周作业:多线程
- 原来数组作为参数时候是可以退化成为指针的,我OUT了
- vim相关操作
- Oracle在创建序列(sequence)时有个参数你可以选择cache或者nocache
- Android点滴-@July
- Android从零起步----(二)Intent的三种传值方式
- 第四周作业-多线程编程
- 第4周实验——多线程编程
- 底层终端操作wifi通过wpa_cli连接一个AP
- android ubuntu下ant环境搭建
- c# 数据库
- UML之活动图
- 如何将其它浏览器的收藏夹导入到Firefox浏览器
- Java 8 Tutorial
- 用Java向MySQL中插入HTML代码