Основано на представлении объектов реального мира в виде моделей и изображений и описания их базовыми понятиями программирования. Суть – в создании программистом собственных типов данных. затем эти данные и функции (методы) для работы с этими данными объединяются в новое базовое понятие – класс. Класс – это совокупность типа данных пользователя и функций для его обработки.
Свойства ООП
1. Класс обеспечивает доступ к данным, принадлежащим ему только методам этого класса. Это первое свойство ООП, называется инкапсуляцией.
2. Второе свойство – наследование, т.е. возможность класса использовать характеристики других классов.
Например, класс, разработанный для программы составления графика движения поездов GRAFIC может быть унаследован новым классом, который используется в программе продажи билетов BILET на разные маршруты. Программы у этих классов разные, но есть общий элемент – расписание движения поездов, точнее типы данных, которые в нём используются. Если создать новый класс (тип данных) poezd типа "структура"
На С:
Typedef struct {
Int Nomer [1000];
Char marshrut [20];
Data Data otpravleniya; // тип data имеет свой формат гггг.мм.дд
Time Vremya otpravleniya// тип time имеет свой формат чч:мм
}; // имя типа структурированных данных
Тип данных POEZD использовался в программе GRAFIC и был унаследован программой BILET при её создании.
3. Полиморфизм – использование одного и того же имени для обозначения различных методов во всей иерархии классов