美文网首页
Java23种设计模式之结构型模式「桥接模式」

Java23种设计模式之结构型模式「桥接模式」

作者: MrLimLee | 来源:发表于2020-08-04 10:26 被阅读0次

桥接模式 - Bridge

  • 用于把抽象化与实现化解耦,使得二者可以独立变化
  • 通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦
  • 这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。这两种类型的类可被结构化改变而互不影响
  • 意图: 将抽象部分与实现部分分离,使它们都可以独立的变化
  • 主要解决: 在有多种可能会变化的情况下,用继承会造成类爆炸问题,扩展起来不灵活
  • 优点: 1、抽象和实现的分离。 2、优秀的扩展能力。 3、实现细节对客户透明
  • 缺点: 桥接模式的引入会增加系统的理解与设计难度,由于聚合关联关系建立在抽象层,要求开发者针对抽象进行设计与编程

定义一个接口 并 实现不同的业务场景

public interface Product {
    void createProduct(String name, String time);
}

public class ProductA implements Product {
    @Override
    public void createProduct(String name, String time) {
        System.out.println("创建项目A, 项目名称:" + name + ", 项目时间:" + time);
    }
}

public class ProductB implements Product {
    @Override
    public void createProduct(String name, String time) {
        System.out.println("创建项目B, 项目名称:" + name + ", 项目时间:" + time);
    }
}

定义一个抽象接口

public abstract class Create {
    protected Product product;

    public Create(Product product) {
        this.product = product;
    }

    public abstract void createProductMethod();
}

实现这个抽象接口

public class CreateProduct extends Create {
    private String name;
    private String time;

    public CreateProduct(Product product, String name, String time) {
        super(product);
        this.name = name;
        this.time = time;
    }

    @Override
    public void createProductMethod() {
        System.out.println("抽象接口特殊的业务实现和接口实现相互分开,互不影响");
        System.out.println("这里是桥接的核心, 创建了项目:" + name);
        product.createProduct(name, time);

    }
}

调用

public static void main(String[] args) {
    Create createProductA = new CreateProduct(new ProductA(), "项目A", "1天");
    createProductA.createProductMethod();

    Create createProductB = new CreateProduct(new ProductB(), "项目B", "5天");
    createProductB.createProductMethod();
}

输出

抽象接口特殊的业务实现和接口实现相互分开,互不影响
这里是桥接的核心, 创建了项目:项目A
创建项目A, 项目名称:项目A, 项目时间:1天
抽象接口特殊的业务实现和接口实现相互分开,互不影响
这里是桥接的核心, 创建了项目:项目B
创建项目B, 项目名称:项目B, 项目时间:5天

相关文章

  • 设计模式之桥接模式

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

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

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

  • 09.桥接模式(结构型)

    桥接模式(结构型) 一、桥接模式概述 桥接模式是一种很实用的结构型设计模式,如果软件系统中某个类存在两个独立变化的...

  • 前篇

    一、常见的设计模式? 创建型:工厂方法模式、抽象工厂模式、建造者模式、原型模式、单例模式 结构型:适配器模式、桥接...

  • 【设计模式】结构型设计模式汇总

    结构型设计模式汇总 结构型设计模式名称 结构型设计模式主要包括 7 大类: 代理模式 桥接模式 装饰器模式 适配器...

  • Android 桥接模式

    Android 23种设计模式 一、前言 Android桥接(Bridge)模式,又被称为桥梁模式。结构型模式之一...

  • Java23种设计模式之结构型模式「桥接模式」

    桥接模式 - Bridge 用于把抽象化与实现化解耦,使得二者可以独立变化 通过提供抽象化和实现化之间的桥接结构,...

  • java23种设计模式-结构型模式之桥接模式

    作者 薛之谦chj 转载请注明出处 我的知乎:https://zhuanlan.zhihu.com/c_12291...

  • 桥接模式 -- 分离功能层次结构和实现层次结构

    1. 概述 桥接模式(Bridge Pattern)是一种结构型设计模式。在理解桥接模式前,我们要先能够区分“类的...

  • 桥接模式

    介绍 桥接模式(Bridge Pattern) 也称为桥梁模式,是结构型设计模式之一。桥接模式的作用就是连接 "两...

网友评论

      本文标题:Java23种设计模式之结构型模式「桥接模式」

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