策略模式 :定义组算法。将每个算法封装起来,并且使它们之间可以互换
策略模式的组成 :抽象策略角色、具体策略角色、环境角色(客户端调用的)
封装变化概念 编程中使用接口而不是接口的实现。
package com.xjsx.strategy;

public interface Strategy {
    
    
public int calculate(int a ,int b);
    
}
package com.xjsx.strategy;

public class AddStrategy implements Strategy {

    @Override
    
public int calculate(int a, int b) {
        
        
return a + b;
    }

}
package com.xjsx.strategy;

public class SubtractStrategy implements Strategy {

    @Override
    
public int calculate(int a, int b) {
        
return a - b;
    }

}