События

Методы

Свойства

Классы объектов

Объекты

Основные понятия ООП

 

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

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

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

Классом называют особую структуру, которая может иметь в своем составе поля, методы и свойства. Класс выступает в качестве объектного типа данных, а объект – это конкретный экземпляр класса. Например, два Сидоровых Ивана принадлежат одному и тому же классу объектов, они - студенты группы ТКС-206. Именно с этим связана их одинаковость (одинаковый шифр группы, одно расписание занятий и т.д.).

Каждый конкретный класс имеет свои особенности поведения и характеристики, определяющие этот класс. Например,

Геометрический объект
Объемный Плоский
  С вершинами Без вершин
  Окружность Эллипс

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

Если характеристика уже однажды определена для более высокого уровня, то все уровни, расположенные ниже имеют ту же характеристику (если уж определена окружность, понятно, что вершин у нее нет).

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

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

Метод – это некоторое действие (операция), которое можно выполнять над данным объектом или команда, которую может выполнять объект. В результате этого действия в объекте что-нибудь меняется (например, местоположение, цвет и др.). Для каждого класса объектов имеется свой перечень методов, которые можно к нему применить или которые он может выполнить. Например, объект можно удалить с экрана, переместить в другое место и др.

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

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

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

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

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

Внешнее управление объектом осуществляется через обработчик событий. Эти обработчики обращаются к методам и свойствам объекта.