学习java中的类图-KFC点餐系统

一.问题描述
同学们应该都去麦当劳或肯德基吃过快餐吧?请同学们参考肯德基官网的信息模拟肯德基快餐店的收银系统,合理使用C++或Java或Python结合设计模式(2种以上)至少实现系统的以下功能:
1.正常餐品结算和找零。
2.基本套餐结算和找零。
3.使用优惠劵购买餐品结算和找零。
4.可在一定时间段参与店内活动(自行设计或参考官网信息)。
5.模拟打印小票的功能(写到文件中)。
基本要求:
1.程序设计风格良好,控制台界面友好。
2.实现功能测试代码,确保程序的健壮性。
3.画出使用的设计模式图。
二.类图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
三.代码
1.AbstractFood

public  abstract class AbstractFood {
    //类别
    protected String kind;
    //数量
    protected int num;
    //价格
    protected float price;
    //合计
    public float totalPrice(){
        return this.num*this.price;
    }
}

2.Food

public interface Food {
    //打印输出食物信息
   String printMessage();
}

3.Factory

public interface Factory {
    public interface  factory{
        //生产汉堡
        public Hamburger createHamburger(int num);

        //生产鸡肉类食物
        public Chicken createChicken(int num);

        //生产甜点
        public Dessert createDessert(int num);

        //生产饮品
        public Drinks createDrinks(int num);
    }
    public Hamburger createZingerBurger(int num);
    public Hamburger createBeefBurger(int num);
    public Hamburger createOrleansBurger(int num);
    public Hamburger createShrimpBurger(int num);
    public Chicken createDrumStick(int num);
    public Chicken createChickenWings(int num);
    public Chicken createPopcornChicken(int num);
    public Dessert createChips(int num);
    public Dessert createEggTart(int num);
    public Dessert createSundae(int num);
    public Drinks createMilky(int num);
    public Drinks createKola(int num);
    public Drinks createCoffee(int num);
    public Combo createOneCombo(int num);
    public Combo createTwoCombo(int num);
    public Combo createThreeCombo(int num);

}

4.KFCFactory

//具体工厂
public class KFCFactory implements Factory {
    //生产香辣鸡腿堡
    public ZingerBurger createZingerBurger(int num){
        return new ZingerBurger(num);
    }

    //生产超级牛肉堡
    public BeefBurger createBeefBurger(int num){
        return new BeefBurger(num);
    }

    //生产奥尔良烤鸡腿堡
    public OrleansBurger createOrleansBurger(int num){
        return new OrleansBurger(num);
    }

    //生产全虾堡
    public ShrimpBurger createShrimpBurger(int num){
        return new ShrimpBurger(num);
    }

    //生产奥尔良鸡翅
    public ChickenWings createChickenWings(int num){
        return new ChickenWings(num);
    }

    //生产烤鸡腿
    public DrumStick createDrumStick(int num){
        return new DrumStick(num);
    }

    //生产鸡米花
    public PopcornChicken createPopcornChicken(int num){
        return new PopcornChicken(num);
    }

    //生产薯条
     public Chips createChips(int num){
        return new Chips(num);
     }

    //生产蛋挞
    public EggTart createEggTart(int num){
        return n
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值