Java第4周实验
来源:互联网 发布:手机淘宝怎么退货退款 编辑:程序博客网 时间:2024/06/06 06:53
第4周:多线程与网页下载
1、线程同步程序,P174-176 例8-4
2、多线程的应用,了解利用多线程下载网页数据。
//P174例8-4,银行存取款,实现线程同步。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 AccountTest { 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
- Java第4周实验
- Java--第15周实验--
- Java第2周实验
- Java第3周实验
- Java第5周实验
- Java第6周实验
- Java第7周实验
- Java编程第四周实验报告4
- Java实验第一天
- JAVA实验第三天
- JAVA实验第三天
- JAVA实验第一天
- 第4周实验报告
- 第4周实验报告
- C#第4周实验
- Java第四周实验报告
- 第4周实验报告任务4
- 第3周实验报告4
- pentesterlab学习记录-week3
- 九度1464:Hello World for U
- HDU 2594 Simpsons’ HiddenTalents(KMP:后缀与前缀)
- Java List/ArrayList操作示例----添加/排序/取子块/删除/追加元素
- 启动app时 出现程序默认标题栏 解决办法
- Java第4周实验
- 第六周项目2-对象作为数据成员
- 求3个处理机同时工作完成7个任务所用时间
- AOV网络与拓扑(二)——实现
- 黑马程序员 OC------内存管理学习
- java类加载的原理
- HDU 2689 Sort it
- ssh 的时候不用输入密码的处理方法
- Macbuntu 一款将Ubuntu变成飘漂亮华丽动人的Mac风格!,体验Mac dock的动感画面