将一组特定的行为和算法封装成类,以适应某些特定的上下文环境,这种模式就是策略模式
作用:解除代码耦合,依赖倒置
例:一个电商网站,针对男性女性用户要跳转到不同的商品类名,并且所有广告位展示不同的广告
demo:
interface UserStrategy{
function showAd();
function showOther();
}
class FemaleUserStrategy implements UserStrategy{
function showAd(){}
function showOther(){}
}
class MaleUserStrategy implements UserStrategy{
function showAd(){}
function showOther(){}
}