Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metod_ukazaniya.pdf
Скачиваний:
5
Добавлен:
15.11.2022
Размер:
1.26 Mб
Скачать

2 БАЗОВЫЕ ПОНЯТИЯ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОГРАММИРОВАНИЯ

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

В основе ООП лежат два основных понятия: объект и класс.

Объект элемент системы, имеющий существенное значение для данной за- дачи, объединяющий в себе данные и операции над ними, обладающий свойствами наследования, инкапсуляции и полиморфизма.

Объект = данные + методы Каждый объект характеризуется свойствами, методами и событиями.

Свойства описание объекта. Примеры атрибутов: "цвет", "размер шрифта". Набор конкретных значений определяет текущее состояние объекта.

Метод это действие объекта, изменяющее его состояние или реализующее другое его поведение. Пример методов: "завершить программу", "свернуть окно программы".

События уведомления, получаемые или передаваемые объектом другим объектам или приложениям (например: щелчок кнопки мышки, нажатие клавиши).

Каждый объект имеет определенное время жизни. В процессе выполнения программы могут создаваться новые и уничтожаться уже существующие объекты.

Каждый объект имеет состояние, обладает четко определенным поведением. Состояние совокупный результат поведения объекта: одно из стабильных

условий, в которых объект может существовать, охарактеризованных количествен- но; в любой момент времени состояние объекта включает в себя перечень (обычно

15

статический) свойств объекта и текущие значения (обычно динамические) этих свойств.

Поведение действия и реакции объекта, выраженные в терминах передачи сообщений и изменения состояния; видимая извне и воспроизводимая активность объекта. Поведение характеризуется определенным набором действий, которые можно совершить с объектом.

При мер : операции с файлом. Результат выполнения действий зависит от со- стояния объекта на момент совершения действия, т.е. нельзя, например, удалить файл, если он открыт кем-либо (заблокирован). В то же время действия могут ме- нять внутреннее состояние объекта при открытии или закрытии файла свойство «открыт» принимает значения «да» или «нет» соответственно.

Каждый объект является экземпляром определенного класса.

Класс это шаблон, на основе которого создается объект, он определяет свой- ства и методы объекта. Объекты, порожденные от одного класса, имеют один и тот же набор свойств и общее поведение, т.е. одинаково реагируют на одинаковые со- бытия. Например, собака это класс, собака Мухтар это объект, представитель или экземпляр класса «Собака».

Концепции ООП

К концепциям ООП относятся: абстрагирование; инкапсуляция; наследование; полиморфизм.

Абстрагирование это упрощенное описание объектов, при котором одни свойства и детали выделяются. а другие опускаются. Хорошей является такая абст- ракция, которая подчеркивает детали, существенные для рассмотрения и использо- вания, и опускает те, которые на данный момент не существенны. Выбор правиль- ного набора абстракций для заданной предметной области представляет собой ос- новную задачу ООП.

Инкапсуляция это свойство системы, позволяющее объединить данные и методы, работающие с ними в классе, и скрыть детали реализации от пользователя.

16

Инкапсуляция позволяет скрыть информацию, к которой не предусмотрен прямой доступ из других классов. Обычно скрываются поля объектов и некоторые его методы, предназначенные для внутреннего использования.

Абстракция и инкапсуляция дополняют друг друга: абстрагирование направ- лено на наблюдаемое поведение объекта, а инкапсуляция занимается внутренним устройством.

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

Наследование возможность порождать один класс от другого с сохранени- ем всех свойств и методов класса-предка, добавляя, при необходимости, новые свой- ства и методы.

Например: базовый класс телефон, подклассы радио и сотовый телефон. Полиморфизм это свойство системы использовать объекты с одинаковым

интерфейсом без информации о типе и внутренней структуре объекта. Полиморфизм это свойство различных объектов выполнять одно и то же

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

объектами класса «Телефон», использовать объекты классов «Радиотелефон» и «Со- товый телефон».

17

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]