Inheritance is one of the four fundamentals of Object-oriented Programming

Inheritance is when an object or class is based on another object (prototypal inheritance) or class (class-based inheritance), using the same implementation (inheriting from an object or class) or specifying a new implementation to maintain the same behavior (realizing an interface; inheriting behavior; programming by difference[1]).

Such an inherited class is called a subclass of its parent class or super class.

Inheritance is a mechanism for code reuse and to allow independent extensions of the original software via public classes and interfaces. The relationships of objects or classes through Inheritance give rise to a hierarchy.

Inheritance was invented in 1967 for Simula.

The term "Inheritance" is loosely used for both class-based and prototype-based programming, but in narrow use is reserved for class-based programming (one class inherits from another), with the corresponding technique in prototype-based programming being instead called delegation (one object delegates to another).

More Information#

There might be more information for this subject on one of the following: