Matlab桥接模式

桥接模式(Bridge)是一种结构型设计模式。它是用组合关系代替继承关系来实现,可以处理多维度变化的场景(https://blog.csdn.net/qq_31156277/article/details/80659537)。它的主要特点是把抽象(Abstraction)与行为实现(Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能扩展。

桥接模式的UML图如下:

​​

​Implementor.m

classdef Implementor < handle
    methods(Abstract)
        operation(~);
    end
end

ConcreateImplementorA.m

classdef ConcreateImplementorA < Implementor
    methods
        function operation(~)
            disp("this is concreteImplementorA's operation...");
        end
    end
end

ConcreateImplementorB.m

classdef ConcreateImplementorB < Implementor
    methods
        function operation(~)
            disp("this is concreteImplementorA's operation...");
        end
    end
end

Abstraction.m

classdef Abstraction < handle
    properties
        implementor
    end
    methods
        function imp = getImplementor(obj)
            imp = obj.implementor;
        end
        function setImplementor(obj,imp)
            obj.implementor = imp;
        end
        function operation(obj)
            obj.implementor.operation();
        end
    end
end

RefinedAbstraction.m

classdef RefinedAbstraction < Abstraction
    methods
        function operation(obj)
            disp("this is RefinedAbstraction...")
            operation@Abstraction(obj);
        end
    end
end

测试代码:

abstraction = RefinedAbstraction();
abstraction.setImplementor(ConcreateImplementorA());
abstraction.operation();
abstraction.setImplementor(ConcreateImplementorB());
abstraction.operation();

参考资料:

https://www.cnblogs.com/lixiuyu/p/5923160.html

https://blog.csdn.net/qq_31156277/article/details/80659537

(0)

相关推荐

  • 桥接模式(Bridge Pattern)

    桥接模式概述 定义:将抽象部分与它的实现部分解耦,使得两者都能够独立的变化 就拿我们日常使用的蜡笔来说,蜡笔有不同的大小和颜色,所以我们往往买的蜡笔盒中会有不少的蜡笔.需要用哪个就用哪个,是不是很方便 ...

  • Matlab代理模式

    代理模式(Proxy)就是给一个对象提供一个代理对象,并有代理对象来控制对原有对象的引用.代理模式和装饰模式非常类似,但最主要的区别是代理模式中,代理类对被代理的对象有控制权,决定其执行或者不执行.本 ...

  • Matlab组合模式

    组合模式(Composite),将对象组合成树形结构以表示"部分-整体"的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性.组合模式的目的是让客户端不再区分操作的是组 ...

  • Java描述设计模式(08):桥接模式

    Java描述设计模式(08):桥接模式 原创知了一笑2019-08-23 07:00:00 写在前面 推荐阅读: Java描述设计模式(07):适配器模式 Java描述设计模式(06):建造者模式 J ...

  • Matlab混入模式(Mixin)

    Mixin是一种类,这种类包含了其他类要使用的特性方法,但不必充当其他类的父类.Matlab无疑是支持多继承的.我们可以利用 Matlab 的这种特性,实现一种叫做 Mixin 的类.MixIn的目的 ...

  • Matlab状态模式

    状态模式就是将状态的条件判断语句转化成其函数重写形式,利用了面向对象语言的多态性,本文根据https://blog.csdn.net/lm324114/article/details/78819602 ...

  • 电信 联通 移动光猫改桥接模式大全,看完这一个视频全部搞定

    电信 联通 移动光猫改桥接模式大全,看完这一个视频全部搞定

  • 家庭网络必知必会!光猫桥接模式你设置对了吗?

    家庭网络必知必会!光猫桥接模式你设置对了吗?

  • 把光猫的路由模式改成桥接模式,提速几倍又稳定,还不会掉速!

    04:34 开心帅挨踢 把光猫的路由模式改成桥接模式,提速几倍又稳定,还不会掉速! 15.5万次观看 · 2个月

  • 为什么宽带账号分路由模式和桥接模式?

    感谢邀请. 根据我所知道的回答一下这个问题. 家庭的光猫大部分由路由模式和桥接模式.无线路由器的WAN接口的连接方式由桥接模式.PPPOE拨号方式.动态获取IP方式.静态IP地址方式.针对这么多连接方 ...

  • 光猫用桥接模式,路由器这样连接,就能使每个房间的网速达到千兆

    光猫用桥接模式,路由器这样连接,就能使每个房间的网速达到千兆

  • PHP设计模式之桥接模式

    PHP设计模式之桥接模式 桥接模式,在程序世界中,其实就是组合/聚合的代名词.为什么这么说呢?熟悉面向对象的我们都知道继承的好处,子类可以共享父类的很多属性.功能.但是,继承也会带来一个问题,那就是严 ...

  • [PHP小课堂]PHP设计模式之桥接模式

    [PHP小课堂]PHP设计模式之桥接模式 关注公众号:[硬核项目经理]获取最新文章 添加微信/QQ好友:[DarkMatterZyCoder/149844827]免费得PHP.项目管理学习资料

  • 路由器AP、路由、桥接模式有什么区别【详细介绍】

    现在的路由大多数已经开始支持多种网络连接模式,那么我们就挑一款模式最全的路由来了解各种模式的区别吧!下文将以TP-Link迷你无线路由器为例.在TP-Link迷你无线路由器上一般有AP(接入点)模式. ...

  • 联通华为HG8347R设置桥接模式 | 大专栏

    前面的笔记中有提到如何通过外网访问家里的服务.在某些场景下可能会用到,比如想要在单位ssh家里的电脑,或者访问家里的NAS等设备等等.之前用的电信的宽带,是通过自己的路由器拨号上网,并且外网IP也是直 ...