A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 张森 于 2013-1-13 12:00 编辑

下面是毕老师写2个储户去存钱的问题?
  1. /*
  2.         需求:
  3.         银行有一个金库,有两个用户存钱,每次存100,存3次。
  4. */
  5. class Bank{
  6.         private int sum ;
  7.         public void add(int sum){
  8.                 sum = sum+n;
  9.                 System.out.println(sum);
  10.         }
  11. }

  12. class Cus implements Runnable{
  13.         private Bank bank = new Bank();
  14.         public void run(){   //当存钱的时候会造成共享数据sum多线程错误。
  15.                 for(int i=0;i<3;i++){
  16.                         bank.add(100);
  17.                 }
  18.         }
  19. }
  20. public class BankDemo{
  21.         public static void main(String[] args){
  22.                 Cus c = new Cus();
  23.                 Thread t1 = new Thread(c).start();
  24.                 Thread t2 = new Thread(c).start();
  25.         }
  26. }
复制代码
毕老师的意思两个储户去存钱,
但我怎么看都是一个储户去存钱,他只new了一个人啊, 我感觉怎么是一个人,划分为二,同一时间去两个柜台同时存钱啊?大家好好看看这里,确实没明白。毕老师第11天11个视频

4 个回复

倒序浏览
周末都没有人吗
回复 使用道具 举报
用户只提供钱,负责预算负责操作的只是银行方或者ATM机。

也可以理解为1个人去银行分别往2个账户存钱,不是需要2个工作人员帮忙工作效率才高吗?
回复 使用道具 举报
林嘉健 发表于 2013-1-13 12:29
用户只提供钱,负责预算负责操作的只是银行方或者ATM机。

也可以理解为1个人去银行分别往2个账户存钱,不 ...

不是两个账户吧  要是两个账户也就不存在同步问题了吧
感觉是一个人 同时在两个柜台往同一个账户存钱。
回复 使用道具 举报
张森 发表于 2013-1-13 12:35
不是两个账户吧  要是两个账户也就不存在同步问题了吧
感觉是一个人 同时在两个柜台往同一个账户存钱。 ...

对啊,老师的重点就是说1个人在2个柜台存钱,这里就涉及到了多线程了嘛。

你的逻辑顺序是对的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马