设计模式之 Strategy(策略模式)

简介: 设计模式之 Strategy(策略模式)

设计模式之 Strategy(策略模式)

Strategy 策略模式是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类.关键词独立

策略模式原理图

代码实现

先省略

总结

  1. 首先通过抽象类或者接口的方式定义出共性的方法进行抽象封装
  2. 然后通过继承或者实现的方式对抽象的方法进行重写或者重载
  3. 最终是通过一个单独的上下文类进行调用,需要注意的是上下文类中主要是使用一个有参构造器建立起与抽象类(接口)的关系引用,并进行使用具体的方法
  4. 为了进行升级可以将策略模式和简单工厂一起使用

特点

目录
相关文章
|
1月前
|
设计模式 算法 PHP
php设计模式--策略模式(六)
php设计模式--策略模式(六)
19 0
|
1月前
|
设计模式 算法 搜索推荐
设计模式之策略模式
设计模式之策略模式
56 0
|
1月前
|
设计模式 算法 Java
Java一分钟之-设计模式:策略模式与模板方法
【5月更文挑战第17天】本文介绍了策略模式和模板方法模式,两种行为设计模式用于处理算法变化和代码复用。策略模式封装不同算法,允许客户独立于具体策略进行选择,但需注意选择复杂度和过度设计。模板方法模式定义算法骨架,延迟部分步骤给子类实现,但过度抽象或滥用继承可能导致问题。代码示例展示了两种模式的应用。根据场景选择合适模式,以保持代码清晰和可维护。
29 1
|
1月前
|
设计模式 算法 Java
小谈设计模式(3)—策略模式
小谈设计模式(3)—策略模式
|
1天前
|
设计模式 算法
行为设计模式之策略模式
行为设计模式之策略模式
|
28天前
|
设计模式 Java
设计模式之策略 Strategy
设计模式之策略 Strategy
21 1
|
14天前
|
设计模式 算法 架构师
设计模式-策略模式详解
系统要求使用算法的客户不应该知道其操作的数据时,可使用策略模式来隐藏与算法相关的数据结构。
342 0
|
1月前
|
设计模式 算法
【设计模式】阿里终面:你觉得这个例子是策略模式吗?
【设计模式】阿里终面:你觉得这个例子是策略模式吗?
23 1
|
1月前
|
设计模式 算法
大话设计模式(2)——策略模式
大话设计模式(2)——策略模式
24 1
|
1月前
|
设计模式 算法 Java
Java 设计模式:探索策略模式的概念和实战应用
【4月更文挑战第27天】策略模式是一种行为设计模式,它允许在运行时选择算法的行为。在 Java 中,策略模式通过定义一系列的算法,并将每一个算法封装起来,并使它们可以互换,这样算法的变化不会影响到使用算法的客户。
32 1