二十三种设计模式(二十二)调停者模式

调停者模式:也称为中介者模式。主要应用于单个系统内部多个角色频繁互相交互的场景。
此时建立一个调停者,使得每个角色都和调停者交互。由调停者统一处理的设计模式

如下是一个库存,采购,销售系统
/**
 * 采购部
 * */
public class Purchase {
    //采购等级 0-不采购 1-普通采购 2-大力度采购
    private int purchaseLevel ;

    //库房对象
    private WareHouse wh;

    //销售部对象
    private Sales s;

    //采购
    public void buyPurchase(){
        checkPurchase();
        int num =purchaseLevel*100;
        wh.addCommodity(num);
    }

    //检查采购条件
    private void checkPurchase(){
        while(wh.getVolume()<200){
            //此次采购可能仓库装不下,让销售部卖直到存储空间够用
            wh.checkVolume();
            s.saleCommodityPrice();
        }
        wh.checkVolume();
    }

    //设置采购等级
    public void setPurchaseLevel(int purchaseLevel) {
        this.purchaseLevel = purchaseLevel;
    }
    //设置库房对象
    public void setWh(WareHouse wh) {
        this.wh = wh;
    }

    //设置销售部对象
    public void setS(Sales s) {
        this.s = s;
    }
}

/**
 * 销售部
 * */
public class Sales {

    //采购部对象
    Purchase p;

    //库房对象
    WareHouse wh;

    public void setP(Purchase p) {
        this.p = p;
    }

    public void setWh(WareHouse wh) {
        this.wh = wh;
    }

    //销售等级, 0-停止销售 1-降价销售 2-平价销售
    private int level ;

    public void setLevel(int level) {
        this.level = level;
    }


    public void saleCommodityPrice

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值