设计模式:“代理模式”、“适配器模式”、“装饰模式”的区别

Bertha 。 2022-02-28 14:24 480阅读 0赞

Proxy, Adaptor, Decorator三种模式比较容易混淆,下面来讲讲它们的区别:

代理模式:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L25ldHllYXhp_size_16_color_FFFFFF_t_70

适配器模式:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L25ldHllYXhp_size_16_color_FFFFFF_t_70 1

装饰模式:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L25ldHllYXhp_size_16_color_FFFFFF_t_70 2

1.代理模式与装饰模式的区别在于,代理模式中的代理类一般是执有真实的被代理类的实例,而装饰模式中的装饰器基类一般是执有其接口的实例,同时装饰器基类可以有多个装饰器实现类;代理模式中的代理类一般只会直接调用被代理类的方法,一般不会添加其它功能,而装饰模式中的装饰器类不但会调用被装饰器的方法,还会添加其它的功能。

2.代理模式与适配器模式的区别在于,代理模式中代理类与被代理类有共同的接口,而适配器模式中的适配器类与被适配器类一般不会有共同的接口。

发表评论

表情:
评论列表 (有 0 条评论,480人围观)

还没有评论,来说两句吧...

相关阅读