Classes specify an interface of operations. They may serve as templates from which objects with the given interface may be created. They may have "class bodies" that specify the implementation of operations in the class interface and the representation of the state. Classes which cannot be instantiated and seve only to provide inheritable functionality are called abstract classes.

-- Wegner. The Object-Oriented Classification Paradigm. 1987