策略模式 :定義組算法。將每個(gè)算法封裝起來,并且使它們之間可以互換
策略模式的組成 :抽象策略角色、具體策略角色、環(huán)境角色(客戶端調(diào)用的)
封裝變化概念 編程中使用接口而不是接口的實(shí)現(xiàn)。
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;
    }

}