策略模式

策略模式

策略模式就是定义了一系列的算法,并将每一个算法封装起来,而他们可以相互替换,策略模式让算法独立于客户端变化

薪资计算


public interface Salary{
...
}

public interface Insurance{
....
}

public interface Tax{
....
}


实现河北,吉林的具体算法实现类


public class HeBeiSalary implements Salary
public class JiLinSalary implements Salary

public class HeBeiInsurance implements Insurance
public class JiLinInsurance implements Insurance

public class HeBeiTax implements Tax
public class JiLinTax implements Tax



修改计算算法的主题类,使得算法可替代



public class SalaryTemplate{

private Salary salary;
private Insurance insurance;
private Tax tax;

public void computer(){
salary.computerSalary();
insurance.computerInsurance();
tax.computerTax();
}

public Salry getSalary()
{
return salary;
}

public void setSalary(Salary salary){
this.salry = salary
}
为insureance, tax 变量提供get, set 方法
}


计算某一地的薪资



SalaryTemplate salaryTemplate = new SalaryTemplate();

salaryTemplate.setSalary(new HeBeiSalary());
salaryTemplate.setInsurance(new HeBeiInsurance());
salaryTemplate.setTax(new HeBeiTax());
salaryTemplate.computer();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值