抽象类是有一个或多个抽象方法的类,抽象类的声明中必须增加修饰符abstract,如下例所示:
public abstract class Employee
{
private String name;
private Date hireDate;
public abstract double getPay();
..................................................
}
抽象方法作为方法的占位符,在派生类中实现对该方法的完整定义。抽象方法的声明中有修饰符abstract,它没有函数的实现体,以分号结束。抽象方法不能被声明为专有的。
实例:
public abstract double getPay();
public abstract void doSomething(int count);
常见错误:不能给一个抽象类创建对象实体。不能使用抽象类的构造函数创建该抽象类的一个对象,而只能给该抽象类的派生类创建对象。例如,
Employee joe = new Employee();// illegal because Employee is an abstract class.