当前位置:   article > 正文

模拟肯德基快餐店点餐_肯德基点餐c++程序

肯德基点餐c++程序

一.题目
请同学们参考肯德基官网的信息模拟肯德基快餐店的收银系统,合理使用C++或Java或Python结合设计模式(2种以上)至少实现系统的以下功能:
1.正常餐品结算和找零。
2.基本套餐结算和找零。
3.使用优惠劵购买餐品结算和找零。
4.可在一定时间段参与店内活动(自行设计或参考官网信息)。
5.模拟打印小票的功能(写到文件中)。
基本要求:
1.程序设计风格良好,控制台界面友好,最多两人一组完成任务。
2.实现功能测试代码,确保程序的健壮性。
3.画出使用的设计模式图。
二.题目分析
模拟肯德基点餐系统,我准备采用学过的抽象模式方法。第一步:抽象出食物接口,并创建食物的基类。第二步:模拟肯德基店的食物进一步建立抽象基类鸡翅类、饮料类、汉堡类、薯条类,这些抽象类实现食物类接口,并且继承食物基类。第三步:将第二步建立的那些抽象类具体化,建立鸡翅实现类、饮料实现类、汉堡实现类、薯条实现类。第四步:建立工厂接口,生产鸡翅、饮料、汉堡、薯条,再建立具体生产工厂,实现生产方法,返回要生产的食物对象。第五步:建立客户端类,抽象类无法直接创建自己的实例化对象,在客户端类中我们实现具体的关联,通过抽象工厂中的方法返回具体生产对象,建立抽象具体食物的对象。这样我们就可以返回具体食物的信息,完成具体食物的生产。
本次实验所用的抽象工厂方法的一些介绍如下,便于我们理解,清晰我们的思路。
抽象工厂模式:提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类,属于对象创建型模式。
下面是一个简单的模式图
在这里插入图片描述
在这里插入图片描述
三.设计类图
在这里插入图片描述
程序代码如下:

package com.demo.factory.model;

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

}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
package com.demo.factory.model;

public abstract class Beverage extends AbstractBaseFood implements IFood
{
	public String printMesage()
	  {
	    return("--" + this.kind + "饮料,\t单价:" + this.price + ",\t数量:" + this.num + ",\t合计:" + this.totalPrice());
	  }

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
package com.demo.factory.model;

public abstract class ChickenWings extends AbstractBaseFood implements IFood {
	public String printMesage()
	  {
	    return("--" + this.kind + "风味鸡翅,\t单价:" + this.price + ",\t数量:" + this.num + ",\t合计:" + this.totalPrice());
	  }

}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
package com.demo.factory.model;

public abstract class FrenchFries extends AbstractBaseFood implements IFood {
	public String printMesage()
	  {
	    return("--" + this.kind + "风味薯条,\t单价:" + thi
  • 1
  • 2
  • 3
  • 4
  • 5
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/80661
推荐阅读
相关标签
  

闽ICP备14008679号