一个肯德基管理系统,加强设计模式简单工厂,装饰模式训练,本次作业完成一个肯德基管理系统,提供三种汉堡,一种炸鸡,一种可乐,用简单工厂和装饰模式来设计实现,首先建立一个food 类,里面有三个参数,实物名称,实物价格,实物个数,提供相应的set,get方法和构造函数,并有一个计算总价格的函数和打印信息的函数,五种食品类继承food类,在foodfactory 中生产对应的产品对象,然后有一个打印信息的接口,Printmessage实现该接口并引用food对象,进行打印信息,在客户端中,由客户选择对应的食品,然后根据该输入有foodfactory产生对应的对象,并让客户选择是否有优惠卷,如果有并满足优惠条件,那么就打印出总价格,并将订单写入文件保存。
源代码:1:clientl类在这里插入代码片
package 肯德基餐饮系统;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Scanner;
public class Client {
static Scanner in=new Scanner(System.in);
public static void main(String[] args) throws IOException {
boolean flag=true;
System.out.println(“欢迎来到肯德基点餐系统,本店为您服务”);
System.out.println(“请输入点的奥尔良汉堡数”);
int a1=in.nextInt();
System.out.println(“请输入点的鸡腿汉堡数”);
int a2=in.nextInt();
System.out.println(“请输入点的牛肉汉堡数”);
int a3=in.nextInt();
System.out.println(“请输入点的可乐数”);
int a4=in.nextInt();
System.out.println(“请输入点的炸鸡数”);
int a5=in.nextInt();
Foodfactory x1=new Foodfactory();
Food m1= x1.create("奥尔良汉堡", a1);
Food m2= x1.create("鸡腿汉堡", a2);
Food m3= x1.