Наследование - это система в объектно-ориентированном программировании, которая позволяет объектам поддерживать операции, определенные предшествующими типами, без необходимости предоставлять свое собственное определение. Это основной вектор полиморфизма в объектно-ориентированном программировании.

Наследование - это основной метод, с помощью которого объектно-ориентированные системы обеспечивают полиморфизм.

Если класс Sub наследуется от другого класса (или другого объекта, как в Self или JavaScript) Base, Sub будет использовать некоторые или все операции (возможно, включая доступ к данным и их хранение) предоставлено Base. Обычно бывает, что Sub получит по крайней мере полный открытый интерфейс Base, чтобы любой объект типа Sub мог стоять вместо объекта типа {{X7 }} в любом коде, написанном для работы с объектами типа Base (см. Принцип подстановки Лискова).

Это средство ортогонально типу используемой системы типов, режиму привязки функции (поздний или ранний), существует ли режим конфиденциальности или действительно оценка (ленивая или слабая).

Пример наследования на диаграмме UML:

См. Наследование в Википедии.