当前位置: 首页 > news >正文

网站a记录的是做cname做暖暖视频网站观看

网站a记录的是做cname,做暖暖视频网站观看,网站域名过期后续费多长时间生效,企业信息平台核心思想 策略模式#xff08;Strategy Pattern#xff09;是一种行为型设计模式#xff0c;用于定义一系列算法或策略#xff0c;将它们封装成独立的类#xff0c;并使它们可以相互替换#xff0c;而不影响客户端的代码#xff0c;提高代码的可维护性和扩展性。 结构 …核心思想 策略模式Strategy Pattern是一种行为型设计模式用于定义一系列算法或策略将它们封装成独立的类并使它们可以相互替换而不影响客户端的代码提高代码的可维护性和扩展性。 结构 1. Strategy抽象策略接口 定义一些列可供替换的算法方法。 2. ConcreteStrategy具体策略实现 实现不同的算法或行为。 3. Context上下文 持有策略对象并在需要时调用具体策略的方法。 适用场景 动态切换想使用不同的算法并希望在运行时切换。避免条件语句如 if-else 或 switch-case使用策略模式代替这些语句。需要经常扩展算法或策略新策略的引入只需要实现策略接口并添加到上下文中而不需要改动现有的算法逻辑。算法的独立性 如果某些算法或操作的实现与具体的上下文和客户端无关而仅依赖于传入的参数策略模式能很好地将算法从客户端解耦出来。 优缺点 优点 符合开闭原则无需对 Context 进行修改就能引入新的策略。运行时切换可以在运行时切换对象内的算法。解耦上下文无需关心具体的策略实现。减少 if-else 的使用避免大量条件判断提高可读性和可维护性。 缺点 增加类数量每个策略需要定义一个新的类可能会类爆炸。策略切换成本客户端必须手动指定策略无法动态适配。 实现步骤 从上下文类中找出修改频率较高的算法 也可能是用于在运行时选择某个算法变体的复杂条件运算符。声明该算法所有变体的通用策略接口。将算法逐一抽取到各自的类中 它们都必须实现策略接口。在上下文类中添加一个成员变量用于保存对于策略对象的引用。 然后提供设置器以修改该成员变量。 上下文仅可通过策略接口同策略对象进行交互 如有需要还可定义一个接口来让策略访问其数据。客户端必须将上下文类与相应策略进行关联 使上下文可以预期的方式完成其主要工作。 示例 // 抽象策略接口 public interface Strategy {void show(); }// 具体策略——A public class StrategyA implements Strategy{Overridepublic void show() {System.out.println(具体策略A);} }// 具体策略——B public class StrategyB implements Strategy{Overridepublic void show() {System.out.println(具体策略B);} }// 具体策略——C public class StrategyC implements Strategy{Overridepublic void show() {System.out.println(具体策略C);} }// 上下文 public class SalesMan {// 持有一个抽象策略接口private Strategy strategy;// 构造方法传入一个具体策略对象public SalesMan(Strategy strategy) {this.strategy strategy;}// 封装后的策略方法public void salesManShow() {strategy.show();} }// 测试类 public class Client {public static void main(String[] args) {SalesMan salesManA new SalesMan(new StrategyA());salesManA.salesManShow();System.out.println(--------------------------------);SalesMan salesManB new SalesMan(new StrategyB());salesManB.salesManShow();System.out.println(--------------------------------);SalesMan salesManC new SalesMan(new StrategyC());salesManC.salesManShow();} } 在源码中的应用 与其他模式的关系 桥接模式、 状态模式和策略模式 在某种程度上包括适配器模式 模式的接口非常相似。 实际上 它们都基于组合模式——即将工作委派给其他对象 不过也各自解决了不同的问题。 模式并不只是以特定方式组织代码的配方 你还可以使用它们来和其他开发者讨论模式所解决的问题。命令模式和策略看上去很像 因为两者都能通过某些行为来参数化对象。 但是 它们的意图有非常大的不同。 你可以使用命令来将任何操作转换为对象。 操作的参数将成为对象的成员变量。 你可以通过转换来延迟操作的执行、 将操作放入队列、 保存历史命令或者向远程服务发送命令等。另一方面 策略通常可用于描述完成某件事的不同方式 让你能够在同一个上下文类中切换算法。 装饰模式可让你更改对象的外表 策略则让你能够改变其本质。模板方法模式基于继承机制 它允许你通过扩展子类中的部分内容来改变部分算法。 策略基于组合机制 你可以通过对相应行为提供不同的策略来改变对象的部分行为。 模板方法在类层次上运作 因此它是静态的。 策略在对象层次上运作 因此允许在运行时切换行为。状态可被视为策略的扩展。 两者都基于组合机制 它们都通过将部分工作委派给 “帮手” 对象来改变其在不同情景下的行为。 策略使得这些对象相互之间完全独立 它们不知道其他对象的存在。 但状态模式没有限制具体状态之间的依赖 且允许它们自行改变在不同情景下的状态。
http://www.hkea.cn/news/14305987/

相关文章:

  • 搭建网站的步骤有哪些html个人主页制作
  • 网站关键词优化建议建设一个返利网站
  • 网站怎么做邮箱毕业设计代做淘宝好还是网站好
  • 网站建设基础实验1工程建设资质单位网站
  • wordpress网站域名解析wordpress备案号显示
  • 荆州做网站公司免费的企业名录搜索
  • 网站建设都用什么软件做网站电脑配置要求个高吗
  • 连云港网站优化公司夜场网站建设
  • 朔州市2018年建设工程网站长沙公司网站设计
  • 旅游网站建设目的怎么制作网站开发设计
  • 网站建设技术优势网站怎么做交易
  • 衡水武邑县建设局网站在家开个代加工厂
  • 北京英文网站建设的原则网络工程师证书考试内容
  • hui怎么做网站网站域名禁止续费
  • 怎样建设淘客网站网站建设暖色调
  • 深圳市网站备案需求个人博客网站开发背景论文
  • 茶叶网站建设公司asp装修公司网站源码
  • 免建网站如何给网站做2维码
  • 大连教育培训网站建设wordpress调用php文件
  • 网站设计的初衷温州网站建设方案书
  • 网站更新 缓存深圳营销网站建设报价
  • 做网赌需要在哪些网站投广告公司网站有收录没排名
  • 网站制作找建设银行信用卡管理中心网站首页
  • 做分销网站系统快速搭建网页
  • 中山手机网站设计小说网站个人可以做吗
  • 什么网站做hevc东莞的网站建设公司哪家好
  • 怎样查询网站建设时间中国建筑装修装饰
  • 网站稿件管理发布系统百度手机提高关键词排名
  • 网站开发 平均工资做网站月度总结
  • 监控网站模版手机网站如何做优化