美文网首页
设计模式之桥接模式

设计模式之桥接模式

作者: 成为一个无趣的人 | 来源:发表于2020-03-09 19:46 被阅读0次

设计模式之桥接模式

1. 模式定义

桥接模式又称柄体模式或接口模式,它是一种结构性模式。桥接模式将抽象部分与实现部分分离,是他们都可以独立地变化。[1]

​ -[1] 图说设计模式

2.UML类图

桥接模式

3. 代码实现

package com.lemon.bridge;

/**
 * @author Hello
 * @description 外观接口,拥有一个改变颜色的方法
 * @date 2020-03-09 18:00
 */
public interface Appearance {
    void setColor();
}
package com.lemon.bridge;

/**
 * @author Hello
 * @description 外观实现A 设置为红色
 * @date 2020-03-09 18:05
 */
public class AppearanceImplA implements Appearance {
    @Override
    public void setColor() {
        System.out.println("红色");
    }
}

package com.lemon.bridge;

/**
 * @author Hello
 * @description 外观实现B 设置为绿色
 * @date 2020-03-09 18:06
 */
public class AppearanceImplB implements Appearance {
    @Override
    public void setColor() {
        System.out.println("绿色");
    }
}
package com.lemon.bridge;

/**
 * @author Hello
 * @description 抽象按钮类,充当桥梁
 * @date 2020-03-09 18:00
 */
public abstract class ButtonBridge {
    private Appearance appearance;

    public abstract void setColor();

    public void setAppearance(Appearance appearance) {
        this.appearance = appearance;
    }

    public Appearance getAppearance() {
        return appearance;
    }
}
package com.lemon.bridge;

/**
 * @author Hello
 * @description 圆形按钮类
 * @date 2020-03-09 18:07
 */
public class CircleButton extends ButtonBridge {

    @Override
    public void setColor() {
        System.out.println("圆形按钮");
        getAppearance().setColor();
    }
}
package com.lemon.bridge;

/**
 * @author Hello
 * @description 矩形按钮类
 * @date 2020-03-09 18:28
 */
public class RectangleButton extends ButtonBridge {

    @Override
    public void setColor() {
        System.out.println("矩形按钮");
        getAppearance().setColor();
    }
}

4. 总结

  • 桥接模式分离了抽象接口及其实现部分

  • 交接模式有时类似于多继承方案,但是多继承方案违背了类的单一职责原则,复用性较差,桥接模式是比多继承方案更好的解决方案

  • 交接模式提高了系统的可扩充性,在两个变化维度任意扩展一个维度,都不需要修改原有系统

  • 实现细节对客户透明,可以对用户隐藏实现细节

  • 桥接模式的引入会增加系统的理解与设计难度,由于聚合关系建立在抽象层,要求开发者针对抽象进行设计与编程

    图解设计模式

相关文章

  • 设计模式之桥接模式

    设计模式之桥接模式 1. 模式定义 桥接模式又称柄体模式或接口模式,它是一种结构性模式。桥接模式将抽象部分与实现部...

  • Java设计模式——桥接模式

    Java设计模式之桥接模式 回顾 上一期分享了适配器模式,主要为了实现解耦 桥接模式 简介 桥接模式是对象的结构模...

  • 设计模式-桥接模式

    设计模式-桥接模式 定义 桥接模式(Bridge Pattern)也称为桥梁模式、接口(Interface)模式或...

  • 桥接模式

    设计模式:桥接模式(Bridge)

  • 设计模式之桥接模式

    设计模式之桥接模式 Intro 桥接模式(Bridge),将抽象部分与它的实现部分分离,使得它们都可以独立地变化。...

  • 设计模式——桥接模式

    设计模式——桥接模式 最近公司组件分享设计模式,然而分配给我的是桥接模式。就在这里记录我对桥接模式的理解吧。 定义...

  • 设计模式之桥接模式

    桥接模式(Bridge),将抽象部分与它的实现部分分离,使它们都可以独立地变化。优先使用对象的合成/聚合将有助于你...

  • 设计模式之桥接模式

    桥接模式:将抽象部分与他实现部分分离,使它们可以独立。 UML图: 使用场景:1、如果一个系统需要在构件的抽象化角...

  • 设计模式之桥接模式

    桥接模式 人的抽象类,这类人喜欢投资 美国人的投资方式 毁天灭地的中国大妈类,所到之处寸草不生 资产接口 , 具有...

  • 设计模式之桥接模式

    定义:将抽象部分与它的实现部分分离,使它们都可以独立地变化。下面用一个实例来说明下这个模式,例如。我们要绘制三个图...

网友评论

      本文标题:设计模式之桥接模式

      本文链接:https://www.haomeiwen.com/subject/ffrmdhtx.html