Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП.rtf
Скачиваний:
41
Добавлен:
03.08.2019
Размер:
707.21 Кб
Скачать

1Технология объектно-ориентированного программирования. Объекты и их свойства.

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

Такой подход объективно обусловлен тем, что окружающий нас мир состоит из целостных объектов, которые обладают определенными свойствами и поведением. Ранее при использовании технологии структурного программирования предусматривалось “расчленение” объекта, описание его свойств отдельно от поведения.

В технологии объектно-ориентированного программирования объекты сохраняют свою целостность, все свойства объекта и его поведение описываются внутри самого объекта.

В основе объектно-ориентированного подхода лежат три понятия:

  • инкапсуляция: объединение данных с процедурами и функциями в рамках единого целого — объекта;

  • наследование: возможность построения иерархии объектов с использованием наследования их характеристик;

  • полиморфизм: задание одного имени действию, которое передается вверх и вниз по иерархии объектов, с реализацией этого действия способом, соответствующим каждому объекту в иерархии.

Инкапсуляция. В объектно-ориентированном программировании объект представляет собой запись, которая служит “оболочкой” для соединения связанных между собой данных и процедур. Другими словами, объект обладает определенными свойствами и поведением. Рассмотрим в качестве примера кнопку — типичный объект, присутствующий в интерфейсе большого количества программ. Кнопка обладает определенным поведением: она может быть нажата, после нажатия на кнопку будут происходить определенные события и т. д. Соединение таких свойств и поведения в одном объекте и называется инкапсуляцией.

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

Полиморфизм — это слово из греческого языка, означающее “много форм”. Перечень интерфейсных кнопок различных типов (простая кнопка, радиокнопка, кнопка-переключатель и т. д.) представляет собой хороший пример полиморфизма. Каждый тип объекта в этом перечне представляет собой различный тип интерфейсной кнопки. Можно описать метод для каждой кнопки, который изобразит этот объект на экране. В терминах объектно-ориентированного программирования можно сказать, что все эти типы кнопок имеют способность изображения самих себя на экране.

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

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

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

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

Наиболее распространенными системами объектно-ориентированного визуального программирования являются Microsoft Visual Basic и Borland Delphi. Катализатором широкого распространения объектно-ориентированного программирования стала технология World Wide Web. Практически все новейшие разработки для этой системы выполняются с помощью объектно-ориентированных языков (например, языка Java).

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

Класс — обобщенное описание набора объектов, обладающих некоторыми одинаковыми методами и структурами данных.

Подкласс — более подробное описание, относящееся к какому-либо специализированному подмножеству набора объектов, описанного классом. Иногда подклассы называют также производными или дочерними классами.

Наследование — механизм автоматического включения в состав различных классов, подклассов и объектов одних и тех же методов и структур данных.