面向对象编程:多态与接口在薪资系统中的应用
1. 多态使系统可扩展的实例
在实际应用中,多态让系统具备了良好的可扩展性。以设备驱动为例,新设备不断被开发出来,往往是在操作系统发布很久之后。当你购买新设备时,设备供应商会提供相应的设备驱动。你将设备连接到计算机并安装驱动后,设备就能立即投入使用。这就是多态使系统可扩展的一个典型例子。
2. 薪资系统案例背景
一家公司按周给员工发放工资,员工分为四种类型:
- salaried employees(固定薪资员工):无论工作时长,每周领取固定工资。
- hourly employees(计时薪资员工):按小时计薪,工作超过 40 小时的部分,按正常时薪的 1.5 倍支付加班费。
- commission employees(提成薪资员工):根据销售额的一定比例获取报酬。
- base - salaried commission employees(底薪加提成薪资员工):除了底薪,还能根据销售额的一定比例获得提成。
在当前薪资周期,公司决定给底薪加提成薪资员工的底薪提高 10%。公司希望编写一个应用程序,以多态的方式进行薪资计算。
3. 员工类层次结构设计
我们使用抽象类 Employee 来表示员工的通用概念。继承 Employee 的类有 SalariedEmployee 、 CommissionEmployee 和 HourlyEmployee 。而 BasePlu
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



