Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция ООП.doc
Скачиваний:
8
Добавлен:
02.11.2018
Размер:
105.98 Кб
Скачать

16.2. Основные принципы ооп

ООП включает в себя 3 основных принципа:

  • Инкапсуляция;

  • Наследование;

  • Полиморфизм.

Инкапсуляция – механизм сокрытия всех внутренних деталей объекта, не влияющих на его внешнее поведение. Это объединение объекта и методов работы с ним (или совмещение данных с методами в одном классе).

Класс приобретает определенную функциональность.

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

Эти способы недоступны за пределами класса. Более того, классы ничего не знают друг о друге. Они полностью разделены. Т.о. объект “закрыт” и окружение не может случайно изменить этот объект.

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

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

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

Порожденный класс называется потомком, а тот, от которого он порожден – предком. У объекта может быть только один предок, но много потомков.

Объект-потомок наследует все описания и методы объекта-предка. Для него нужно описывать только дополнительные свойства.

Наследуемые свойства и методы можно использовать в неизменном виде или их переопределять (модифицировать).

Нельзя переопределять данные при наследовании. Данные можно только добавлять. С помощью наследования одни классы объектов могут происходить от других.

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

Полиморфизм – это свойство классов решать схожие по смыслу проблемы разными способами.

Использование для разных объектов методов под одинаковыми именами, но с разным содержанием.

Это свойство, позволяющее одно и тоже имя процедуры использовать для решения нескольких разных задач. Например, щелочек по кнопке Button1Click().

Это достигается переопределением родительского метода в классе-потомке. Переопределение позволяет адресовать разным объектам одно и то же сообщение с разным исполнением.

Родитель и потомок ведут себя по-разному.

Один и тот же метод выполняется по-разному для различных объектов.

16.3. Графическая структура понятий оо Подхода

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

Принцип наследования приводит к созданию ветвящегося дерева классов, постепенно разрастающегося от родителя к потомкам. Каждый потомок дополняет возможности своего родителя новыми свойствами и передает их своим потомкам.

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

Свойства - структура данных, характерных для этого объекта.

Преимущества ООП:

  • возможность многократного использования программного кода (порождение новых классов);

  • невозможность извне ничего изменить в объекте, если такое изменение является недопустимым;

  • объекты отображают реально существующие предметы или процессы.