Java设计模式之结构型模式(小结):适配器 VS 装饰者 VS 桥接 VS 代理 VS 外观模式 区别
2018-11-02 17:41
1386 查看
相关文章:
前面介绍了五种结构型模式,他们有些类似,在使用过程中也容易搞混,我们在这就给他们做一个对比:
1、适配器模式:
适配器模式和其他三个设计模式一般不容易搞混,它的作用是将原来不兼容的两个类融合在一起,uml 图也和其他的差别很大。
UML类图:
2、装饰者模式:
装饰者模式结构上类似于代理模式,但是和代理模式的目的是不一样的,装饰者模式是用来动态地给一个对象添加一些额外的职责,装饰者模式为对象加上行为,而代理则是控制访问。
UML类图:
3、桥接模式:
桥接模式的目的是为了将抽象部分与实现部分分离,使他们都可以独立地进行变化。所以说他们两个部分是独立的,没有实现自同一个接口,这就是桥接模式与代理模式,装饰者模式的区别。
UML类图:
4、代理模式:
代理模式为另一个对象提供代理,以便控制客户对对象的访问,管理的方式有很多中,比如远程代理、虚拟代理、保护代理等,而装饰者模式是为了扩展对象。
UML类图:
5、外观模式:
外观模式提供一个统一的接口,用来访问子系统中的一群接口。外观模式定义了一个高层接口,让子系统更容易使用。
适配器模式将一个或多个类接口变成客户端所期望的一个接口,虽然大多数资料所采用的例子中适配器只适配一个类,但是你可以适配许多类来提供一个接口让客户端访问;类似的,外观模式 也可以只针对一个拥有复杂接口的类提供简化的接口,两种模式的差异,不在于他们“包装”了几个类,而是在于它们的意图。适配器模式 的意图是,“改变”接口符合客户的期望;而外观模式的意图是,提供子系统的一个简化接口。
UML类图:
原博客链接:
https://blog.csdn.net/self_study/article/details/51622243
阅读更多
相关文章推荐
- Java经典23种设计模式之结构型模式(三)------附代理模式、适配器模式、外观模式区别
- 设计模式之结构型模式(适配器、桥接、外观、代理、享元、组合、装饰)
- 编程常用设计模式详解--(中篇)(适配器、装饰、代理、外观、桥接、组合、享元)
- 适配器 VS 装饰者 VS 桥接 VS 代理 VS 外观
- 设计模式之代理模式和装饰者模式的区别(java)
- java 设计模式 (代理模式和装饰者模式的区别)
- 编程经常使用设计模式具体解释--(中篇)(适配器、装饰、代理、外观、桥接、组合、享元)
- 23种设计模式3--结构型模式(适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式)
- 设计模式——适配器、装饰者、外观和代理模式
- “设计模式”学习之五:桥接、外观、享元与代理(结构型)
- "围观"设计模式(30)--结构型设计模式总结(适配器、代理、装饰、外观、桥梁、组合、享元)
- java 设计模式中 装饰者模式 与 代理模式的区别
- 装饰者,适配器,代理和外观模式的区别
- 设计模式--适配器、代理、装饰、外观模式的区别与联系
- java设计模式(工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式、适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式,。 行为型模式,共十一种:策略模式、模板方法)
- 23种设计模式--结构型模式(适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式)
- 抽象类和接口的区别(里面有适配器设计、工厂设计、代理设计模式)
- 详解java设计模式(五)之代理模式下篇(结构型)
- java设计模式——结构型之代理模式
- Java 代理模式和装饰者模式的区别