黑马程序员_银行业务调度系统(一)
---------------------- android培训、java培训、期待与您交流! ----------------------
?
?
?????????今天学习了银行业务调度系统,下面先贴一下这个系统的需求:
?
银行业务调度系统?
?
?
?
?
?
?
?? ? 不要求实现GUI,只考虑系统逻辑实现,可通过Log方式展现程序运行结果。
?
?
???????? 首先是对该系统进行面向对象的分析和设计,首先会有一个取号码的机器,
当去银行办理业务的时候通常都会看到银行的的门口有一个取号机,取号机会不断地产生号码;还有为为客户服务的窗口,有三种类型的窗口:普通窗口、快速窗口、vip窗口,由于要为三种类型的客户客户提供服务,所以会有三种独立的号码
序列,所以要有三个号码管理器对象,分别管理各自的号码,这三个号码管理器对象有一个取号机统一管理,因为取号机只有一个因此将其设计成单例模式。
?
???????? 该系统的流程就是:当有客户去银行办理业务时首先去取号机处根据自己所办理的业务(普通业务,快速业务,vip业务)选取合适的号码,这时由各个窗口
根据窗口当前要办理业务的号码依次叫号,若果这是vip窗口或者是快速窗口无人等待办理业务,则vip窗口和快速窗口可为普通客户进行服务,当有vip客户或快速
窗口有客户取号时,这两个窗口将停止为普通客户服务,转而为其专有的客户服务。
?
???????? 下面是对系统中类设计:
?
?????? 1.设计一个取号机类NumberMachine,这个类用来管理各种类型的号码
????????? 管理器对象。
?????? 2.设计一个号码管理器类NumberManager,这个类用来管理三种不同型号
????????? 的号码。
?????? 3.设计一个服务窗口类ServiceWindow,该类用于为各种类型的客户提供服
????????? 务。
?????? 4.设计一个类CustomerType,将其设计为枚举类型以方便操作,该枚举的
????????? 元素为三个:即普通客户、快速客户、vip客户。
?????? 5.设计一个启动类MainClass,用来测试该系统。
?
?
?????????? 具体的实现代码见黑马程序员_银行业务调度系统(二)。
?
?
---------------------- android培训、java培训、期待与您交流! ----------------------
?
详细请查看:http://edu.csdn.net/heima