jargon

Design patterns·Objects, messages and the principles

the base class does half the job and leaves a method for you to fill in, and you cannot instantiate it on its own.

Abstract class

Also calledabstract base class, ABC

A class that carries real implementation but is incomplete, declaring one or more methods that a subclass must supply. It sits between an interface, which has no implementation and can be implemented many times over, and a concrete class. Reach for it when the shared code is substantial and the variation is small; it buys reuse at the price of a single inheritance slot in most languages, which is the constraint that eventually forces the switch to composition.

Commonly confused with