同学们应该都去麦当劳或肯德基吃过快餐吧?请同学们参考肯德基官网的信息模拟肯德基快餐店的收银系统,合理使用C++或Java或Python结合设计模式(2种以上)至少实现系统的以下功能:
1.正常餐品结算和找零。
2.基本套餐结算和找零。
3.使用优惠劵购买餐品结算和找零。
4.可在一定时间段参与店内活动(自行设计或参考官网信息)。
5.模拟打印小票的功能(写到文件中)。
程序源代码
1.单品的接口
package KFCdemo;
public interface Food {
//输出食物信息
void printMessage();//抽象方法,打印输出食物信息
}
2.单品基本信息抽象类
package KFCdemo;
public abstract class AbatractBaseFood {
//类别
protected String kind;
//数量
protected int num;
//价格
protected float price;
//合计
public float sumprice() {
return this.num*this.price;//返回总价
}
}
3.建立抽象工厂
package KFCdemo;
import KFCdemo.drink;
import KFCdemo.Hamburg;
import KFCdemo.Fry;
public interface KfcFactory {
//生产汉堡类
public Hamburg createHamburg(int type,int num);
//生产油炸食品类
public Fry createFry(int type,int num);
//生产饮料
public drink createdrink(int type,int num);
}
4.建立抽象工厂的具体实现类
package KFCdemo;
import KFCdemo.drink;
import KFCdemo.Hamburg;
import KFCdemo.Fry;
import KFCdemo.Beefwrap;
import KFCdemo.Beijingduckwings;
import KFCdemo.Chickenchop;
import KFCdemo.Cola;
import KFCdemo.Frenchfries;
import KFCdemo.Friedchickenwings;
import KFCdemo.Frieddrumstick;
import KFCdemo.Orangejuice;
import KFCdemo.superTake;
import KF