策略模式 怼烎@ 2021-09-28 07:44 331阅读 0赞 /** * 抽象决策类 * @author Walker * */ public abstract class Strategy { public abstract void backupDatabase(); } /** * 具体策略类 * @author Walker * */ public class StrategyA extends Strategy{ @Override public void backupDatabase() { System.out.println("策略A:逻辑备份"); } } public class StrategyB extends Strategy{ @Override public void backupDatabase() { System.out.println("策略B:冷备份"); } } /** * 环境角色,给客户端调用 * @author Walker * */ public class DBContext { private Strategy s; public DBContext(Strategy s) { super(); this.s = s; } public void executeBackupDatabase() { s.backupDatabase(); } } /** * 代码中经常用if。。else。。来解决问题,这种硬编码的缺点是复用性差,有新需求时,要修改条件分支 * 策略模式定义了一系列算法,并将每个算法封装起来,让算法独立于使用它的客户而独立变化。 * @author Walker * */ public class StrategyPattern { public static void main(String[] args) { DBContext context = new DBContext(new StrategyA()); context.executeBackupDatabase(); DBContext context1 = new DBContext(new StrategyB()); context1.executeBackupDatabase(); DBContext context2 = new DBContext(new StrategyC()); context2.executeBackupDatabase(); } }
相关 策略模式 1. 定义 > 定义一系列算法,把他们一个个封装起来,并且使他们可以互相替换。本模式使得算法 > 可以独立于使用它的客户而变化。 2. 策略模式的结构 ![策 川长思鸟来/ 2022年05月29日 04:09/ 0 赞/ 46 阅读
相关 策略模式 前言 1、面向对象的编程,并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同的属性和功能的对象的抽象集合才是类。 2、简单工厂也能解决问题,但是 港控/mmm°/ 2021年12月08日 16:21/ 0 赞/ 306 阅读
相关 策略模式 用了也不知道用了的典型。 就是接口存在的意义,意图和实现分离。 就好像1+1=2,实现了一个简单加法一样。。。 转载于:https://www.cnblogs.com/l 曾经终败给现在/ 2021年11月27日 06:14/ 0 赞/ 292 阅读
相关 策略模式 策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略 亦凉/ 2021年09月29日 15:56/ 0 赞/ 280 阅读
相关 策略模式 策略模式(Strategy):定义了一系列算法家族,将每种算法分别封装起来,使得各种算法之间可以互相替换。策略模式可以让算法的变化不影响使用算法的客户,符合开放- 桃扇骨/ 2021年09月22日 23:22/ 0 赞/ 260 阅读
相关 策略模式 13.策略模式 class Program { static void Main(string[] args) 本是古典 何须时尚/ 2021年09月17日 00:00/ 0 赞/ 392 阅读
相关 策略模式 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为 忘是亡心i/ 2021年09月16日 23:00/ 0 赞/ 431 阅读
相关 策略模式 策略模式 1. 模式动机 2. 模式定义 3. 模式结构 4. 时序图 5. 代码分析 6. 模式分析 7. 优点 8. 深碍√TFBOYSˉ_/ 2021年08月31日 02:47/ 0 赞/ 530 阅读
相关 策略模式 面向对象的编程,并不是类越多越好,类的划分是为了封装,但分类的基础是抽象,具有相同属性和功能的对象的抽象集合才是类。 策略模式:定义了算法家族,分别封装起来,让它们之间... 灰太狼/ 2020年11月29日 04:23/ 0 赞/ 599 阅读
还没有评论,来说两句吧...