Definition:
In C++ and C#, classes can be defined as deriving from a base class. A derived class inherits all of the ancestors protected and public methods and data members.
With inheritance if a method is made virtual in the base class then the derived class can override it with different behaviour. This makes possible polymorphism.

