/* 假如我们在开发一个系统时需要对程序员类进行设计,程序员包含三个属性:姓名 工号 以及工资。

  • 经理 ,除了含有程序员的属性外,另外还有一个奖金属性。
  • 请使用继承的思想设计出程序员类和经理类。要求类中提供必要的方法进行属性访问 */
public class fr {

    public static void main(String[] args) {
            Coder c=new Coder();
            c.setName("Likefr");
            c.setId("0007");
            c.setSalary(5000);
            c.work();
            
            manager m=new manager("项目经理","1100",10000,5000);
            m.work();
    }
}
    



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.salary=salary;
        this.id=id;
    }
    
    public void setName(String name) {
        this.name=name;
    }
    
    public String getName() {
        return name;
    }
    
        public void setSalary(double salary) {
            this.salary = salary;
        }
        
        public double getSalary() {
            return salary;
        }

        public void setId(String id) {
            this.id = id;
        }
        public String getId() {
            return id;
        }
        
        public abstract void work();
        
}


class Coder extends Employee{
    public Coder(){};
    public Coder(String name,String id, double salary) {
        super(name,id,salary);
    }
    public void work() {
        System.out.println("我的姓名是:"+this.getName());
        System.out.println("我的工号是:"+this.getId());
        System.out.println("我的工资是:"+this.getSalary());
    }

}

class manager extends Employee{
    private int bonus;
    
    public manager() {}
    public manager(String name,String id,double salary,int bonus) {
        super(name,id,salary);
        this.bonus=bonus;
    }
    
    @Override
    public void work() {
        System.out.println("我的姓名是:"+this.getName());
        System.out.println("我的工号是:"+this.getId());
        System.out.println("我的工资是:"+this.getSalary());
        System.out.println("我的奖金是:"+this.bonus);
    }
}

运行结果:

我的姓名是:Likefr
我的工号是:0007
我的工资是:5000.0
我的姓名是:项目经理
我的工号是:1100
我的工资是:10000.0
我的奖金是:5000
最后修改:2019 年 10 月 30 日
如果觉得我的文章对你有用,请随意赞赏