Abstract
An abstract class cannot be instantiated
Abstract classes contain abstract methods
Abstract methods do not contain implementations
Used in a class hierarchy where a class defines just part of its implementation and expects its subclasses to fill in the rest
A nonabstract class derived from an abstract class MUST override all of its parent�s abstract methods