• 面向设计大作业——公司餐厅


    1.功能调查与系统功能框架图


    Gitee:https://gitee.com/wangyanyuvc/regectory/tree/master

    2.类的设计

    3.类说明

    1.Dish

    Dish类是存储菜品信息,number表示菜品编号,name表示菜品名称,price表示菜品价格,vipprice则表示菜品的会员价。

    2.Menu

    Menu类存储菜单,dish是一个嵌套类,使用map的形式来存储菜单。
    方法:addDish是添加菜品,dishExist判断菜品是否存在,showAll显示菜品信息,deleteProduct删除菜品

    3.SingleItem

    SingleItem类是存储单品,即单个菜品的信息,dish是一个嵌套类,count就是菜品的数量。
    方法:subtotal小计,msubtotal会员的小计

    4.Individualorder

    Individualorder类是存储个人订单的,payment表示订单的状态,即订单是支付状态还是未支付状态。同样用map来存储。
    方法:addSingleItem添加单品,dishExist判断单品是否存在,showAll显示员工的所有单品,mshowAll显示会员的所有单品,deleteSingleItem删除单品,modifySingleItem修改菜品数量,totalAllMoney计算总价,mtotalAllMoney计算总价(会员),clearOrder清空订单

    5.Staff和Member

    Staff类和Member类,其中Member类继承自Staff类,Member有一个优惠,就是含有折扣券即coupon,使用一次可打八折。

    6.Ui

    Ui类就是存储界面,欢迎界面,商家界面以及用户界面。
    方法:WelcomeView欢迎界面,BusinessView商家模式界面,UserView用户模式界面

    7.BusinessTest和UserTest

    BusinessTest类和UserTest类是这两个功能的汇总,即使用。
    方法:businessTest商家的操作功能整理,userTest用户的操作功能整理

    8.RegectoryDao和File

    RegectoryDao是Dao接口,涉及文件的读取方法,具体在File类中实现。
    方法:MenuInput读取Menu,MenuOutput存储Menu,StaffInput读取Staff,MemberInput读取Member,MemberOutput存储Member

    4.系统的包的规划设计

    5.特色

    1.使用了DAO模式

    目前使用的是文件的读取存储到map中,以后如果要改成其他方式,不需要重写原代码,只要写新的实现类。

    2.实现了数据持久化(数据存储)

    使用文本.txt的形式存储菜单信息,以及员工和会员的信息。

    3.已完成大部分功能,通过控制台操作,简单演示如下:


  • 相关阅读:
    继承作业0920
    类与对象
    类和对象基础题
    类和对象数组
    数组
    字符串
    2.1面向对象
    7.1 Java集合概述
    Java动态代理的两种实现方法
    18.5.2动态代理和AOP
  • 原文地址:https://www.cnblogs.com/yyzhu/p/14103652.html
Copyright © 2020-2023  润新知