设计模式之--装饰模式与代理模式的区别
2014-01-05 13:20
267 查看
二者的代码实现上非常的类似,但是就行为目的而言,二者是相反的(装饰模式:增强,代理模式:限制)
装饰器模式:能动态的新增或组合对象的行为。
代理模式:为其他对象提供一种代理以控制对这个对象的访问.(换句话说,可以不执行某功能)
装饰模式是“新增行为”,而代理模式是“控制访问”。
装饰模式是在原有基础之上增加额外的功能,而代理模式有两种情况可以使用第一种是延迟代理对象,对于大文件或者目前还未加载完的对象,使用比较合适。第二种为权限判断,在调用功能前判断当前用户是否有此权限。
代理模式不是嵌套调用的。
装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案;
代理模式给一个对象提供一个代理对象,并有代理对象来控制对原有对象的引用;
装饰模式应该为所装饰的对象增强功能;
代理模式对代理的对象施加控制,并不提供对象本身的增强功能
装饰器模式:能动态的新增或组合对象的行为。
代理模式:为其他对象提供一种代理以控制对这个对象的访问.(换句话说,可以不执行某功能)
装饰模式是“新增行为”,而代理模式是“控制访问”。
装饰模式是在原有基础之上增加额外的功能,而代理模式有两种情况可以使用第一种是延迟代理对象,对于大文件或者目前还未加载完的对象,使用比较合适。第二种为权限判断,在调用功能前判断当前用户是否有此权限。
代理模式不是嵌套调用的。
装饰模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案;
代理模式给一个对象提供一个代理对象,并有代理对象来控制对原有对象的引用;
装饰模式应该为所装饰的对象增强功能;
代理模式对代理的对象施加控制,并不提供对象本身的增强功能
相关文章推荐
- JAVA设计模式:代理模式&& 装饰模式区别
- 设计模式--代理模式--以及和装饰模式的区别
- 设计模式之装饰模式和代理模式区别与联系
- 设计模式之装饰模式和代理模式区别与联系
- java设计模式之装饰模式代理模式区别
- 设计模式-代理模式(和装饰模式的真正区别)
- 设计模式之装饰模式和代理模式区别与联系
- 设计模式--适配器、代理、装饰、外观模式的区别与联系
- 【设计模式】代理模式和装饰模式之间的区别
- 装饰设计模式和代理设计模式的区别
- 装饰模式与代理模式的区别(转载)
- 代理模式和装饰器模式的区别
- 设计模式:适配器模式和代理模式的区别
- 装饰模式与代理模式的区别
- 代理模式和装饰器模式的区别
- 装饰模式与代理模式的区别
- OOAD-设计模式(四)结构型模式之适配器、装饰器、代理模式
- 代理模式和装饰模式区别
- 再议:装饰器模式和代理模式的区别
- 抽象类和接口的区别(里面有适配器设计、工厂设计、代理设计模式)