装饰模式 vs (静态)代理模式

栏目: 后端 · 发布时间: 6年前

内容简介:这两个设计模式都属于结构型模式,且非常相似,其UML图如下:装饰模式:

这两个 设计模式 都属于结构型模式,且非常相似,其UML图如下:

装饰模式:

装饰模式 vs (静态)代理模式

(静态)代理模式:提到代理模式一般是指静态代理模式,动态代理模式会在中专门讲解

装饰模式 vs (静态)代理模式

共同点:

  • 装饰者与被装饰者,代理类与被代理类,都是继承自同一个接口,可以令他们在被调用时相互替换

不同点:

  • 被装饰者往往被作为装饰者的构造器参数传入装饰者,强调被装饰者功能的增强;被代理类往往在代理类内部被创建,所以这里用UML里组合的关系,强调对被代理类的访问控制。
  • 装饰者里持有的是被装饰者的接口类型,所以可以装饰所有实现同一接口的类;代理类是针对某一个具体的类进行代理,所以对每一个类都要实现一个对应的代理类,这是静态代理模式的局限,可以使用动态代理模式来弥补。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构与算法

数据结构与算法

张铭、王腾蛟、赵海燕 / 高等教育出版社 / 2008-6 / 34.00元

《数据结构与算法》是普通高等教育“十一五”国家级规划教材,也是北京市精品课程主讲教材。《数据结构与算法》按照IEEE/ACM CC20025和教育部教指委关于“计算机科学与技术专业规范”(CCC2005)的要求编写,力求使学生较全面地理解数据结构的概念、掌握各种数据结构与算法的实现方式,同时比较不同数据结构和算法的特点,重点强调实践教学和学生动手能力的培养。 《数据结构与算法》的内容涉及基本......一起来看看 《数据结构与算法》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

SHA 加密
SHA 加密

SHA 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试