Java实现经理与员工的差异

  Java实现经理与员工的差异

  对于在同一家公司工作的经历和员工而言,两者是有很多共同点的。例如,每个月都要发工资,但是经理在完成目标任务后,还会获得奖金。此时,利用员工类来编写经理类就会少写很多代码,利用继承技术可以让经理类使用员工类中定义的属性和方法。编写程序,通过继承演示经理与员工的差异。

  思路分析:典型的继承问题。父类是员工类,子类是经理类,经理类继承员工类,这样经理类中就只用额外实现奖金,即增加表示奖金的成员变量和设置及获取奖金的成员方法。

  代码如下:

  import java.util.Date;

  public class Employee {

  private String name; //员工的姓名

  private double salary; //员工的工资

  private Date birthday; //员工的生日

  public String getName() { //获取员工的姓名

  return name;

  }

  public void setName(String name) { //设置员工的姓名

  this.name = name;

  }

  public double getSalary() { //获取员工的工资

  return salary;

  }

  public void setSalary(double salary) { //设置员工的工资

  this.salary = salary;

  }

  public Date getBirthday() { //获取员工的生日

  return birthday

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个案例可以使用面向对象的思想来实现,可以定义一个 `Employee` 员工和一个 `Manager` 经理,其中 `Employee` 中包含了员工的基本信息和工资计算方法,`Manager` 继承了 `Employee` ,并添加了管理津贴的计算方法。 以下是一个简单的示例代码: ```java class Employee { protected String name; // 员工姓名 protected int salary; // 员工薪水 public Employee(String name, int salary) { this.name = name; this.salary = salary; } public int getSalary() { // 计算员工薪水 return salary; } public void printInfo() { // 输出员工信息 System.out.println("Name: " + name); System.out.println("Salary: " + salary); } } class Manager extends Employee { private int bonus; // 管理津贴 public Manager(String name, int salary, int bonus) { super(name, salary); this.bonus = bonus; } public int getSalary() { // 计算经理薪水 return salary + bonus; } public void printInfo() { // 输出经理信息 System.out.println("Name: " + name); System.out.println("Salary: " + getSalary()); System.out.println("Bonus: " + bonus); } } public class Main { public static void main(String[] args) { Employee employee = new Employee("Alice", 5000); Manager manager = new Manager("Bob", 8000, 2000); employee.printInfo(); manager.printInfo(); } } ``` 在上面的代码中,`Employee` 和 `Manager` 分别代表了员工经理,其中 `Employee` 中包含了员工的基本信息和工资计算方法,`Manager` 继承了 `Employee` ,并添加了管理津贴的计算方法。在 `main` 函数中,我们创建了一个 `Employee` 型的对象 `employee` 和一个 `Manager` 型的对象 `manager`,并分别调用它们的 `printInfo` 方法,输出它们的信息和薪水。 需要注意的是,在 `Employee` 和 `Manager` 的 `getSalary` 方法中,我们使用了 `@Override` 注解来重写覆盖父的方法。这也是为了实现多态。这样,当我们通过父引用调用这些方法时,会根据对象的实际型来调用对应的方法。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值