码迷,mamicode.com
首页 > 其他好文 > 详细

【设计模式】代理模式和装饰模式之间的区别

时间:2015-01-13 14:20:16      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:

  学习了代理模式和装饰模式之后,对这两个的模式的区别产生了混淆,因为两个模式都是对一个类的功能进行扩充,而且服务类和客户类都同时实现了统一个接口。

  那么,两者之间有什么区别呢?

  通过http://www.cnblogs.com/jaredlam/archive/2011/11/08/2241089.html的文章,总结得知,两种模式最大的不同就在于对于访问的控制,以及类之间关系的确定阶段的不同。

  代理模式是在服务类中新建一个被代理类的实例,使用者得不到被代理类的具体信息,也无法访问,类似于中介对客户信息的保密。

  两个类的关系在编译阶段就确定了。

  装饰模式是在使用过程中,传入需要装饰类的实例,使用者可以访问,控制实例的信息,该对象对使用者来说是可以访问的。

  两个类的关系在动态阶段才被确定。

【设计模式】代理模式和装饰模式之间的区别

标签:

原文地址:http://www.cnblogs.com/u3shadow/p/4220993.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!