Объектно-ориентированное программирование (ООП)
Это метод программирования, при котором разрабатываемая программа состоит из совокупности объектов, представляющих собой некоторые элементы реального мира, содержащие в себе данные и операции над ними. Использование ООП позволяет разрабатывать и определять типы, которые затем можно использовать так же, как и стандартные типы данных языка С. Таким образом при создании программ ударение смещающееся с разработки алгоритмов на разработку классов.
Основные свойства ООП:
1. Инкапсуляция- сочетание в одном объекте данных и операций над ними.
2. Наследование- сохранение свойств базовых классов в производных.
3. Полиморфизм- присваивание имени некоторому действию, которое совместно используется всеми объектами в иерархии, причем каждый объект в иерархии организует(реализует) это действие своим собственным образом.
Инкапсуляция
Механизм, который объединяет данные и методы, манипулирующие этими данными и защищает и то и другое от внешнего вмешательства (неправильного использования).
Наследование
Процесс, посредством которого один объект может наследовать свойства другого объекта, добавлять к ним черты, характерные только для него. (Автомобиль-автобус).
Таким образом не надо каждый раз описывать все с нуля. Это и есть главное преимущество наследования.
В ООП класс, от которого наследуют, принято называть базовым/ родительским.
Класс, который получается называется порожденным/производным.