- /**
- 对员工建模,员工包含3个属性:姓名(name),工号(id),工资(pay)。
- 经理也是员工,除包含员工的属性外,还包含奖金()bonus属性。
- 用继承的思想设计出员工类和经理类。
- 要求类中提供必要的方法进行属性的访问。
- 分析:
- 1,建一个父类员工(Employee),它是普通员工和经理的共性的抽取
- 2,建立普通员工类(Pro),继承(extends)父类
- 3,建立经理类(Manger),继承父(extends)类
- */
- abstract class Employee
- {
- private String name;//定义变量
- private String id;
- private double pay;
- Employee(String name,String id,double pay)
- {
- this.name=name;//初始化
- this.id=id;
- this.pay=pay;
- }
- public String getName()
- {
- return name;
- }
- public void setName(String name)
- {
- this.name = name;
- }
- public String getId()
- {
- return id;
- }
- public void setId(String id)
- {
- this.id = id;
- }
- public double getPay()
- {
- return pay;
- }
- public void setPay(double pay)
- {
- this.pay = pay;
- }
- public abstract void work();
- }
- class Pro extends Employee
- {
- Pro(String name,String id,double pay)
- {
- super(name,id,pay);
- }
- public void work()
- {
- System.out.println("Pro work");
- }
- }
- class Manger extends Employee
- {
- private int bonus;
- Manger(String name,String id,double pay,int bonus)
- {
- super(name,id,pay);
- this.bonus=bonus;
- }
-
- public int getBonus()
- {
- return bonus;
- }
- public void setBonus(int bonus)
- {
- this.bonus = bonus;
- }
- public void work()
- {
- System.out.println("manger work");
- }
- }
- class ExtendsTest
- {
- public static void main(String[] args)
- {
- //1、通过“通过 new Pro("普通员工张三", "技术001", "9000") 的方式创建对象”
- Pro pro = new Pro("普通员工张三", "技术001", 9000);
- System.out.println(pro.getName());
- System.out.println(pro.getId());
- System.out.println(pro.getPay());
- System.out.println("=============================");
- //2、通过“可以通过set和get方法访问成员变量” 设置变量并且访问变量
- pro.setName("普通员工张三");
- pro.setId("销售003");
- pro.setPay(10000);
- //3、通过get访问
- System.out.println(pro.getName());
- System.out.println(pro.getId());
- System.out.println(pro.getPay());
- }
- }
-
复制代码 |
|