结构型模式是描述如何将类对象结合在一起,形成一个更大的结构,结构模式描述两种不同的东西:类与类的实例。故可以分为类结构模式和对象结构模式。

在GoF设计模式中,结构型模式有:

1.适配器模式 Adapter

适配器模式是将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

两个成熟的类需要通信,但是接口不同,由于开闭原则,我们不能去修改这两个类的接口,所以就需要一个适配器来完成衔接过程。

2.桥接模式 Bridge

桥接模式将抽象部分与它的实现部分分离,是它们都可以独立地变化。它很好的支持了开闭原则和组合锯和复用原则。实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这些多角度分离出来让他们独立变化,减少他们之间的耦合。

3.组合模式 Composite

组合模式将对象组合成树形结构以表示部分-整体的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。

4.装饰模式 Decorator

装饰模式动态地给一个对象添加一些额外的职责,就增加功能来说,它比生成子类更灵活。也可以这样说,装饰模式把复杂类中的核心职责和装饰功能区分开了,这样既简化了复杂类,有去除了相关类中重复的装饰逻辑。 装饰模式没有通过继承原有类来扩展功能,但却达到了一样的目的,而且比继承更加灵活,所以可以说装饰模式是继承关系的一种替代方案。

5.外观模式 Facade

外观模式为子系统中的一组接口提供了同意的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

外观模式中,客户对各个具体的子系统是不了解的,所以对这些子系统进行了封装,对外只提供了用户所明白的单一而简单的接口,用户直接使用这个接口就可以完成操作,而不用去理睬具体的过程,而且子系统的变化不会影响到用户,这样就做到了信息隐蔽。

6.享元模式 Flyweight

享元模式为运用共享技术有效的支持大量细粒度的对象。因为它可以通过共享大幅度地减少单个实例的数目,避免了大量非常相似类的开销。.

享元模式是一个类别的多个对象共享这个类别的一个对象,而不是各自再实例化各自的对象。这样就达到了节省内存的目的。

7.代理模式 Proxy   

为其他对象提供一种代理,并由代理对象控制对原对象的引用,以间接控制对原对象的访问。

转自:

链接:https://www.nowcoder.com/questionTerminal/8118573affd743df95045267464089ab

表示感谢!!

结构型模式分类与简介相关推荐

  1. 设计模式分类(创建型模式、结构型模式、行为型模式 及其区别)

    1.创建型模式 前面讲过,社会化的分工越来越细,自然在软件设计方面也是如此,因此对象的创建和对象的使用分开也就成为了必然趋势.因为对象的创建会消耗掉系统的很多资源,所以单独对对象的创建进行研究,从而能 ...

  2. 技术图文:03 结构型设计模式(下)

    结构型设计模式(下) 本教程主要介绍一系列用于如何将现有类或对象组合在一起形成更加强大结构的经验总结. 知识结构: 组合模式 – 树形结构的处理 Sunny 软件公司欲开发一个杀毒(AntiVirus ...

  3. 备战面试日记(3.3) - (设计模式.23种设计模式之结构型模式)

    本人本科毕业,21届毕业生,一年工作经验,简历专业技能如下,现根据简历,并根据所学知识复习准备面试. 记录日期:2022.1.9 大部分知识点只做大致介绍,具体内容根据推荐博文链接进行详细复习. 文章 ...

  4. 结构型设计模式(七种)

    3. 结构型设计模式 结构型模式描述如何将类或对象按某种布局组成更大的结构.它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者采用组合或聚合组合对象. 由于组合关系或聚合关系比较 ...

  5. 《精通python设计模式》读书笔记之——结构型设计模式

    结构型设计模式: 结构型设计模式处理一个系统中不同实体(比如,类和对象)之间的关系,关注的是提供一种简单的对象组合方式来创造新功能.可用于实现不兼容软件之间的接口兼容. ①.适配器模式 简介: 适配器 ...

  6. 设计模式(结构型)之享元模式(Flyweight Pattern)

    PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN.因为CSDN也支持MarkDown语法了,牛逼啊! [工匠若水 http://blog.csdn.net/yanbob ...

  7. 【设计模式】设计模式总结 ( 七大设计原则 | 创建型模式 | 结构型模式 | 行为型模式 ) ★★★

    文章目录 一.七大设计原则 1.开闭原则 2.依赖倒置原则 3.单一职责原则 4.接口隔离原则 5.迪米特原则 6.里氏替换原则 7.合成复用原则 二.创建型模式 0.简单工厂模式 ( 不属于 GOF ...

  8. 设计模式之结构型模式(5种)

    目录 结构型模式(Structural Pattern):怎么构造一个对象(行为.属性) 一.适配器模式 二.桥接模式(Bridge) 三.装饰者模式 设计模式在JAVA I/O库中的应用 案例 使用 ...

  9. 设计模式(结构型)之代理模式(Proxy Pattern)

    PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN.因为CSDN也支持MarkDown语法了,牛逼啊! [工匠若水 http://blog.csdn.net/yanbob ...

  10. 装饰者设计模式(结构型设计模式)

    一.装饰者设计模式简介 装饰器设计模式(Decorator Pattern) 也叫包装设计模式,属于结构型模式,它是作为现有的类的⼀个包装,允许向⼀个现有的对象添加新的功能, 同时⼜不改变其结构给对象 ...

最新文章

  1. 链表节点的删除(删除重复无序节点)
  2. fast nms YOLACT
  3. C语言第五讲,语句 顺序循环选择.
  4. python数字1 3怎么表示_Python入门篇之数字
  5. rabbitmq接口异常函数方法_RabbitMQ监控(三):监控队列状态
  6. 自定义枚举typeHandler
  7. 【iPhone X重磅发布】携A11人工智能芯片登场,人脸识别9大特征
  8. 线程安全性的基础知识
  9. AS3 Signals之入门篇
  10. 【译】Silverlight for Windows Phone Toolkit In Depth(五)
  11. 三维浮雕软件 linux,立体浮雕工具下载 Type3(立体浮雕软件) v4.6.0.0 免费安装版 下载-脚本之家...
  12. 硬件特征码已达到最大上限_获取硬件特征码(硬盘,网卡,CPU)
  13. android root权限命令行,android在apk中获取root权限,并执行命令
  14. 关于switchcase和ifelse的效率对比分析
  15. 【游戏测试】bug优先级的定义及如何描述
  16. 香港低价linux虚拟主机,
  17. 【学习笔记】神经内科常用量表总结(文后有下载链接)
  18. 机器翻译系统,主要划分为哪几大类型?
  19. (论文阅读笔记)Semantic-Aware Domain Generalized Segmentation
  20. 表格的建立与单元格的合并

热门文章

  1. 爱情的短命是众所周知的
  2. 单片机蜂鸣器奏乐代码例子
  3. STM32——蜂鸣器示例代码
  4. MATLAB2016b安装包
  5. 博途调试g120_【免费资料】西门子变频器调试软件汇总
  6. Java基础-刘意经典版DAY1
  7. 《软件工程导论第6版》--张海藩 牟永敏 课后答案及其详解 第7章 实现
  8. windowsR2(流媒体服务器)
  9. 全球及中国差旅费管理系统行业趋势分析与投资前景建议研究报告2022-2028年版
  10. 神经网络拟合高程异常