What is abstract base class?

A class that does not include an implementation and therefore cannot be directly used. It is used to derive other classes; the derived classes implement the methods.