案例47经理与员工工资案例的核心是通过多态实现不同层级员工的工资调整机制。以下是关键信息整合:
一、案例背景
某公司员工分为普通员工和经理两类,经理属于员工中的特殊层级。普通员工涨薪10%,经理涨薪20%。需利用面向对象编程中的多态特性实现这一逻辑。
二、实现思路
-
类结构设计
-
基类 :定义公共属性(如姓名、地址)和基础方法(如涨薪接口)。
-
子类 :
-
Employee
类继承自Person
,包含工号、工资、工龄等属性,并实现抽象的add
方法(用于涨薪)。 -
Manager
类继承自Employee
,额外添加level
属性,并重写add
方法实现20%涨薪逻辑。
-
-
-
多态应用
通过父类引用调用子类重写的方法,实现不同层级员工涨薪的差异化处理。例如:
Person p = new Manager("张三", "北京", 1, 5000, 5); p.add(); // 调用Manager类的20%涨薪逻辑
三、代码框架示例
abstract class Person {
private String name;
private String address;
public Person(String name, String address) { this.name = name; this.address = address; }
public abstract void add();
}
class Employee extends Person {
private String id;
private double salary;
public Employee(String id, String name, String address, double salary, int age) {
super(name, address);
this.id = id;
this.salary = salary;
}
@Override
public void add() {
salary += salary * 0.10; // 普通员工涨薪10%
}
}
class Manager extends Employee {
private int level;
public Manager(String id, String name, String address, double salary, int age, int level) {
super(id, name, address, salary, age);
this.level = level;
}
@Override
public void add() {
salary += salary * 0.20; // 经理涨薪20%
}
}
四、注意事项
-
抽象类设计 :
Person
类需声明add
为抽象方法,强制子类实现具体逻辑。 -
继承与多态 :通过继承关系和接口实现,确保代码的可扩展性和维护性。
该案例主要考察面向对象编程中的继承、多态及抽象类应用,适用于需要根据对象类型执行不同逻辑的场景。