设计模式-结构型模式

结构模式(7种)

适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

1.适配器模式(常用,需要掌握)

定义: 适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。

主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。

适配器模式:将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作,其别名为包装器。

类适配器模式:当希望将一个类转换成满足另一个新接口的类时,可以使用类的适配器模式,创建一个新类,继承原有的类,实现新的接口即可。

对象适配器模式:当希望将一个对象转换成满足另一个新接口的对象时,可以创建一个Wrapper类,持有原类的一个实例,在Wrapper类的方法中,调用实例的方法就行。

接口适配器模式:当不希望实现一个接口中所有的方法时,可以创建一个抽象类Wrapper,实现所有方法,我们写别的类的时候,继承抽象类即可。

2.装饰者模式(不常用,了解即可)

定义:动态的将新功能附加到对象上。在对象功能扩展方面,它比继承更有弹性。

3.代理模式**(常用,需要掌握)**

代理模式的含义:使用代理对象来代替对真实对象的访问。

定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。通俗的来讲代理模式就是我们生活中常见的中介。

作用是:可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标对象的功能。

  1. 静态代理 2. 动态代理

区别是否需要实现接口(动态不需要)

4 外观模式(不常用,了解即可)

定义: 隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。

5 桥接模式(不常用,了解即可)

定义: 将抽象部分与它的实现部分分离,使它们都可以独立地变化。

6 组合模式(不常用,了解即可)

定义:有时又叫作部分-整体模式,它是一种将对象组合成树状的层次结构的模式,用来表示"部分-整体"的关系,使用户对单个对象和组合对象具有一致的访问性。

7 享元模式(不常用,了解即可)

定义:通过共享的方式高效的支持大量细粒度的对象。

主要解决:在有大量对象时,有可能会造成内存溢出,我们把其中共同的部分抽象出来,如果有相同的业务请求,直接返回在内存中已有的对象,避免重新创建。

相关推荐
咖啡八杯2 小时前
GoF设计模式——解释器模式
java·后端·spring·设计模式
大数据新鸟5 小时前
设计模式四大基本原则
设计模式
南一Nanyi10 小时前
依赖注入和控制反转
前端·设计模式·nestjs
tiankong121313 小时前
如何拓展多态下的子类
设计模式·c#
jctech16 小时前
让「小程序」跑起真正的原生代码:ComboNative 多进程原生小程序运行时 · Alpha 首发
android·设计模式·架构
Kel1 天前
Node.js 单线程高并发:从内核中断到 JS 回调的完整技术栈
设计模式·架构·node.js
解局易否结局2 天前
ArkUI MVI 架构实战:单向数据流设计模式在 HarmonyOS NEXT 中的深度实践
华为·设计模式·架构·harmonyos
解局易否结局3 天前
ArkTS 设计模式与架构进阶:构建可维护的 HarmonyOS 应用
华为·设计模式·架构·harmonyos
happyness443 天前
AI编程与设计模式
设计模式·ai编程
就是小王同学啊3 天前
Spring小技巧之设计模式
sql·spring·设计模式