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