package cn.lon.interview.bank; public class NumberMachine { private NumberManager commonManager = new NumberManager(); private NumberManager expressManager = new NumberManager(); private NumberManager vipManager = new NumberManager(); public NumberManager getCommonManager() { return commonManager; } public NumberManager getExpressManager() { return expressManager; } public NumberManager getVipManager() { return vipManager; } private NumberMachine(){} private static NumberMachine instance=new NumberMachine(); static NumberMachine getInstance(){ return instance; } }
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- package cn.lon.interview.bank; import java.util.ArrayList; import java.util.List; public class NumberManager { private int lastNumber=1; private List<Integer> queueNumbers=new ArrayList<Integer>(); public synchronized Integer generateNewNumber(){ queueNumbers.add(lastNumber); return lastNumber++; } public synchronized Integer fetchServiceNumber(){ if(queueNumbers.size()>0){ return (Integer)queueNumbers.remove(0); } else{ return null; } } }
package cn.lon.interview.bank; public enum CustomerType { COMMON,EXPRESS,VIP; public String toString(){ String name = null; switch(this){ case COMMON: name = "普通"; break; case EXPRESS: name = "快速"; break; case VIP: name ="VIP"; break; } return name; } }
银行业务调度系统的源码
最新推荐文章于 2024-08-13 20:32:39 发布