面向对象(抽象类练习)

/**
* Created by rabbit on 2014-07-21.博客园.刘朋程
* 假如我们在开发一个系统时,需要对员工进行建模,
* 员工包含3个属性:姓名、工号、工资。经理也是员工
* ,除了含有员工的属性外,另外还有一个奖金属性。
* 使用继承的思想设计出员工类和经理类。要求类中
* 提供一个必要的方法进行属性访问
*
* 员工类:name,id,pay
*
* 经理类:继承了员工,并有自己特有的bonus
*/
//Created by rabbit on 2014-07-21.博客园.刘朋程
abstract class Employee
{
    private String name;
    private String id;
    private int pay;

    Employee(String name,String id,int pay)
    {
        this.name = name;
        this.id = id;
        this.pay = pay;
    }
    public abstract void work();
}
//Created by rabbit on 2014-07-21.博客园.刘朋程
class Manager extends Employee
{
    private int bonus;
    Manager(String name,String id,int pay,int bonus)
    {
        super(name, id, pay);
        this.bonus = bonus;
    }

    public void work()
    {
        System.out.println("Manager work");
    }
}
//Created by rabbit on 2014-07-21.博客园.刘朋程
class Pro extends Employee
{
    Pro(String name,String id,int pay)
    {
        super(name, id, pay);
    }
    public void work()
    {
        System.out.println("Pro work");
    }

}
//Created by rabbit on 2014-07-21.博客园.刘朋程
public class AbstractTest
{
    public static void main(String [] args)
    {
        System.out.println("work");
    }
}

原文地址:https://www.cnblogs.com/liupengcheng/p/3858170.html