简单介绍一下这两个设计模式。
策略模式的思想就是,当你要根据特定场景使用特定算法时,可以把用一个接口提供这个算法,不同的场景对他进行不同的实现。主流程通过不同的实现类
来完成这个功能。
简单工厂就是根据一个type返回对应的对象。
简单工厂+策略模式就可以实现根据调用方传过来的type通过简单工厂获取到对数据操作的实现类,然后操作数据返回,当新增一个type时,可以很清晰解决,避免误改。
下面以一个计算器举例,其实这不是一个很好的例子。
public class CalculatorTest { /** * 调用房 */ @Test public void test() { double num1 = 1.1; double num2 = 2.0; double result = calculate(num1, num2, CaculatorType.ADD); System.out.println(result); } /** * 接收方 * @param type 计算方法类型 * @return 计算结果 */ public double calculate(double num1, double num2, CaculatorType type) { CalculatorFactory calculatorFactory = new CalculatorFactory(); Calculator calculator = calculatorFactory.getCalculator(type); return calculator.caculate(num1, num2); } }