设计模式——中介者模式

发布时间:2022-07-04 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了设计模式——中介者模式脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

很常用的一种设计模式,比如所谓的MVP架构就是典型的中介者模式

MVC 框架时代, M V C 三者之间皆可以相互操作,导致后期维护的难度升高,之后就引入了MVP架构来进行解耦,本质就是使用中介者模式的思想。
这里就不多做解释了,大家应该都用过MVP吧

还是举个例子:

现在有n个买家和n个卖家;他们如果相互交流就会比较麻烦,比较乱,我们引入一个中介(对,就像现实的中间商)来对接两头就ok了。
定义买方中介接口
public interface SolderMediary {
  
    void sendMessageToBuyer(String msg);
}
定义卖方中介接口
public interface BuyerMediary {
  
    void sendMessageToSolder(String msg);
}
定义中介者
public class Market implements SolderMediary, BuyerMediary {
    PRivate Buyer buyer;
    private Solder solder;

    public void setBuyer(Buyer buyer) {
        this.buyer = buyer;
    }

    public void setSolder(Solder solder) {
        this.solder = solder;
    }

    @override
    public void sendMessageToSolder(String msg) {
        suPEr.sendMessage(msg);
        solder.handleMsg(msg);
    }
  
    @Override
    public void sendMessageToBuyer(String msg) {
        super.sendMessage(msg);
        buyer.handleMsg(msg)
    }
}
定义卖方类
public class Solder {
  
    BuyerMediary mediary;
  
    public Solder(BuyerMediary mediary) {
        this.mediary = mediary;
    }

    void sendMessage(String message) {
        this.mediary.sendMessageToBuyer(message);
    }
}
定义买方类
public class Buyer {
  
    SolderMediary mediary;
  
    public Buyer(SolderMediary mediary) {
        this.mediary = mediary;
    }

    @Override
    void sendMessage(String message) {
        super.sendMessage(message);
        this.mediary.sendMessageToSolder(message);
    }
}

脚本宝典总结

以上是脚本宝典为你收集整理的设计模式——中介者模式全部内容,希望文章能够帮你解决设计模式——中介者模式所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。