设计一个系统,模拟KFC门店的一哥柜台招待顾客的过程,
系统中主要有下列积累对象:
门店,包括服务员,顾客,食物架,饮料机,主配:
服务员,在前台负责收银和从后厨的食物架上给顾客取餐;如果有失误则将食物给顾客并收银,如果暂时没有食物则会提示顾客,估计可可以选择等待或取消该食物
顾客,进入门店后根据自己的喜好在菜单上选择想要的食物;
食物架,季后初中放置各种快餐食物的架子,分门别类摆放汉堡,薯条等;每次拿走食物后,数量都会减少。
饮料机:制作各种饮料。有容量上限,和当前容量,每次某种饮料孔氏主配负责将其加满
主配:负责制作各种食物,向食物架上摆放食物
食物,包括鸡腿堡,薯条,鸡块,蛋挞等;薯条分大中小,鸡腿堡分辣的和不辣的。
饮料,包括可乐,冰爽茶,咖啡等;每一杯有对应的容量。分为热饮跟冷饮
菜单,即帖在柜台上方的菜单,包括了所有食物及饮料的名称和价格;场景:
KFC 门店在开门时为前台派出以为服务员。每当有一位顾客来前台时,门店的OnCustomer被调用。顾客从菜单中选择任意种、任意数量的食物和饮料告诉服务员。服务员去食物架上找食物给顾客配餐。如果当时没有某些食物,则服务员询问顾客是否等待或者取消该食物;如果顾客选择等待,则通知主配制作该种食物放在食物架上,再从食物架上拿取。当餐齐了之后,给顾客食物,同时收钱。请设计一个KFCRestaurant类来模拟上述场景。程序入口时KFCRestaurant.OnCustomer
方法:在该方法中实现各种对象交互。为简单起见,仅考虑一个前台,一个顾客的情况。
要求:根据上述描述抽象出各种类,碎玉类之间的差别,合理的用子类派生和属性的方式来区分

解决方案 »

  1.   


    客户选择 之后告诉服务员服务员有几个动作服务员询问顾客是否等待或者取消该食物如果顾客选择等待,则通知主配制作该种食物放在食物架上,再从食物架上拿取。当餐齐了之后,给顾客食物,同时收钱不管顾客了呗。OnCustomer询问(顾客)通知(配餐人员)取物(食物对象 哪些饮料 汉堡这些)配送()收钱()还是要画图 根据自己的思路来分析。