黑马程序员------银行业务调度系统

本文详细阐述了在号码管理系统中如何高效地生成、分配不同类型的客户号码,包括VIP客户、普通客户和快速客户的排队号码。系统设计采用了单例模式来管理三个号码管理器对象,分别对应不同类型客户的需求。通过同步方法确保了号码的唯一性和顺序性,实现了按顺序依次办理业务的功能。

                                                               ------- android培训java培训、期待与您交流! ----------

       有三种对应类型的客户:VIP客户,普通客户,快速客户 ,异步随机生成各种类型的客户,各类型客户在其对应窗口按顺序依次办理业务 。

本系统一共要产生三个号码管理器对象,各自管理一类用户的排队号码。这三个号码管理器对象统一由一个号码机器进行管理,这个号码机器在整个系统中始终只能有一个,所以,它要被设计成单例。

      各类型客户在其对应窗口按顺序依次办理业务即叫号.

 

NumberManager类
          定义一个用于存储上一个客户号码的成员变量和用于存储所有等待服务的客户号码的队列集合

 

Java代码   收藏代码
  1. public class NumberManager {  
  2.     private int lastNumber=1;  
  3.     private List<Integer> queueNumber=new ArrayList<Integer>();  
  4.     public synchronized Integer generateNewManager(){  
  5.         queueNumber.add(lastNumber);  
  6.         return lastNumber++;  
  7.     }  
  8.     public synchronized Integer fetchServiceNumber(){  
  9.         Integer number=null;  
  10.         if(queueNumber.size()>0){  
  11.         number= queueNumber.remove(0);   
  12.         }  
  13.         return number;  
  14.     }  
  15. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值