策略模式是对算法的包装, 是把使用算法的责任和算法本身分割开来, 委派给不同的对象管理.
策略模式通常把一个系列的算法包装到一系列的策略类里面, 作为一个抽象策略类的子类.
一句话来形容: 准备一组算法, 并将每一个算法封装起来, 使得他们可以互换.
策略模式的结构:
策略模式 涉及到三个角色:
环境角色: 持有一个Strategy 类(策略类)的引用
抽象策略角色: 策略类, 通常由一个接口或者抽象类实现
具体策略角色: 包装了相关的算法和行为.
策略模式是对算法的包装, 是把使用算法的责任和算法本身分割开来, 委派给不同的对象管理.
策略模式通常把一个系列的算法包装到一系列的策略类里面, 作为一个抽象策略类的子类.
一句话来形容: 准备一组算法, 并将每一个算法封装起来, 使得他们可以互换.
策略模式的结构:
策略模式 涉及到三个角色:
环境角色: 持有一个Strategy 类(策略类)的引用
抽象策略角色: 策略类, 通常由一个接口或者抽象类实现
具体策略角色: 包装了相关的算法和行为.