装饰模式、装饰器模式、代理模式、外观模式区别

来源:互联网 发布:ubuntu命令窗口 编辑:程序博客网 时间:2024/04/29 10:49

代理模式VS外观模式VS适配器模式

这三个模式的相同之处是,它们都作用于用户与真实被使用的类或系统之间,作一个中间层,起到了让用户间接地调用真实的类的作用。


简单扣扣字眼

装饰器模式:能动态的新增或组合对象的行为。 
代理模式:为其他对象提供一种代理以控制对这个对象的访问. 
适配器模式:是对其他对象接口的一种转换行为,将原接口转换为目标接口,达到适配的效果。
外观模式:外观对象提供对子系统各元件功能的简化为共同层次的调用接口,它主要起到"简化作用"。

装饰模式是“新增行为”,代理模式是“控制访问行为”,适配器模式是"转换行为",外观模式是一种"简化行为"。


代理模式 
1
 代理模式中的原类和代理类继承同一父类;
2 原类对象与代理类对象接口相同,功能一致;
3 起到了隐藏原类的作用。


适配器模式 
1
 只有适配器继承目标接口;
2 讲原有类接口转换为目标代码需求的接口。


外观模式 
是多个类的集成、统一适配。


装饰者模式

以对 客户端透明(客户端需要指明装饰的是哪个类)的方式 扩展对象的功能,是继承关系的一个替代方案;


阅读全文
0 0
原创粉丝点击