-
分析以下需求,并用代码实现:
-
1.定义项目经理类 属性: 姓名 工号 工资 奖金 行为: 工作work 2.定义程序员类 属性: 姓名 工号 工资 行为: 工作work
要求: 向上抽取一个父类,让这两个类都继承这个父类,共有的属性写在父类中,子类重写父类中的方法
编写测试类: 完成这两个类的测试
-
分析:
-
项目经理类:姓名,工号,工资,奖金,工作work(){} 程序员类:姓名,工号,工资,工作work(){} 抽象雇员(employee)类: 姓名,工号,工资,工作work();
*/
package com.itheima3;
//抽象雇员(employee)类:
//姓名,工号,工资,工作work();
public abstract class Employee {
private String name;
private String ID;
private double salary;
public Employee() {}
public Employee(String name,String ID,double salary) {
this.name = name;
this.ID = ID;
this.salary = salary;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getID() {
return ID;
}
public void setID(String iD) {
ID = iD;
}
public double getSalary() {
return salary;
}
public void setSalary(double salary) {
this.salary = salary;
}
public abstract void work();
package com.itheima3;
//项目管理类
public class Manager extends Employee{
private double bonus;
public Manager() {}
public Manager(String name,String ID,double salary,double bonus) {
super(name,ID,salary);
this.bonus = bonus;
}
public double getBonus() {
return bonus;
}
public void setBonus(double bonus) {
this.bonus = bonus;
}
@Override
public void work() {
System.out.println("项目经理要擅于管理");
}
}
package com.itheima3;
public class Programmer extends Employee{
public Programmer() {}
public Programmer(String name,String ID,double salary) {
super(name,ID,salary);
}
@Override
public void work() {
System.out.println("程序员要努力写代码");
}
}
package com.itheima3;
public class Test {
public static void main(String[] args) {
Manager m = new Manager("老王","001",30000,8000);
System.out.println(m.getName()+"---"+m.getID()+"---"+m.getSalary()+"---"+m.getBonus());
m.work();
System.out.println("--------------------------------");
Programmer p = new Programmer("小李","002",15000);
System.out.println(p.getName()+"---"+p.getID()+"---"+p.getSalary());
p.work();
}
}
控制台输出结果