Superclass (computer science)
In computer science, a superclass is a class from which other classes are derived. A superclass is also called a parent class. The classes that are derived from a superclass are known as child classes, derived classes, or subclasses. We can also say that a class A extends class B when A is a subclass of the B superclass.
A superclass allows for a generic interface to specialized functionality through the use of virtual functions.
The superclass mechanism is extensively used in object oriented programming due to the reusability that can be achieved: common features are encapsulated in modular objects.
Languages may support both abstract and concrete superclasses.
Base Class
A base class is a class that has no superclass, and is therefore at the base of the tree of subclasses. Most object-oriented programming systems provide a library of classes from which the developer derives their own. These libraries will often have a single or a small set of base classes which provide the foundation for the library.
Where a language or library has a single base class then this is also known as a Top type.
In UML a class may have its root property set to show that it is a base class.
In C++ parlance (also used in C# and others), the term base class is used instead of superclass.