策略模式与代理模式的比较
最近了解了一下策略模式和代理模式,发现一些比较有意思的异同点。
策略模式的组成成员:一个接口、若干个接口实现类、一个策略接口调用类。
策略模式特点:
接口:公用方法;
接口实现类:以各种方式实现接口的公用方法;
策略接口调用类:
1、成员变量为策略接口;
2、带参数构造函数,参数为策略接口,为成员变量赋值;
3、调用接口的公用方法。
代理模式的组成成员:一个接口,若干接口实现类,一个实现接口的代理类
代理模式特点:
接口:公用方法;
接口实现类之普通类:实现公用方法;
接口实现类之代理类:
1、实现接口;
2、成员变量为代理接口;
3、带参数的构造函数,参数为代理接口,为成员变量赋值;
4、调用接口的公用方法。
从上面列举的特性来看,两种模式非常相似,区别只在核心类,策略模式的
核心类如果实现接口,便成为了代理模式,而代理模式撤掉核心类的接口实现,
就成了策略模式。
转 https://www.iteye.com/blog/q395488499-806398
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2021-07-20 VScode 不能自动补全结束标签?
2021-07-20 vue-router安装和配置方法
2021-07-20 JAVA基础——接口(全网最详细教程)
2021-07-20 谈谈Java接口
2021-07-20 你觉得我的这段Java代码还有优化的空间吗?
2021-07-20 知识全聚集 .Net Core 技术突破 丨ABP vNext 开始
2021-07-20 从零搭建一个IdentityServer——资源与访问控制