Интерфейс

Класс

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

Пример графический редактор

Пример разработки диаграммы классов

Графический редактор

Понятия-кандидаты на роль классов: фигура, меню, круг, квадрат, цвет, размер, координаты центра.

Фигура


Центр

Размер

Координаты


Круг квадрат

Пример адресная книга

Варианты использования:

ü Добавление записей

ü Поиск записей

Понятия-кандидаты: шаблон записей, шаблон поиска, шаблон имени файла, запись, файл, имя файла и тд.

Меню

Вызывает Вызывает Вызывает

Шаблон ввода имени файла шаблон добавления шаблон голоса

Добавляет запись

Запись

Файл

Имя файла

Сообщение

Текст

Пример калькулятор

Пример разработки диаграммы классов

Калькулятор:

· Составить варианты использования

· Выделить кандидатов на роль классов

· Определить какие из кандидатов действительно являются классами

· Описать взаимосвязи классов

· Установить атрибуты классов

(ДЗ!!!)

· Объект обладает состоянием и поведением

· Структура и поведение схожих объектов определяет общий для них класс

· Термины объект и экземпляр класса идентичны

· Объектно-ориентированная программа состоит из программ объектов, которые взаимодействуют через передачу сообщений

· Объект, получая сообщение, должен на него реагировать

· Реакция на сообщение зависит от состояния объекта.

· Состояние объекта характеризуется перечнем всех его свойств и текущими значениями каждого из этих свойств.

· Поведение объекта – это то, как объект действует и реагирует

· Поведение описывается в терминах состояния объекта и передачи сообщений.

· Операции над объектами:

ü Создание объекта

ü Уничтожение объекта

ü Модификация

ü Селекция

ü Итерация

Модификация – обращение к объекту с целью изменить его состояние.

Селекция – получение информации о состоянии объекта

Итерация – получение доступа к нескольким однотипных атрибутам объекта.

· Класс – тип данных, который включает описание полей данных и процедур – метод, работающий с этими данными.

· Класс – способ программной реализации абстракций

· Объект – переменная типа класс.

Пример: Класс квадрат.

Square
X,Y,R, COLOR
Initialize (x0, y0,color) Paint ()

· Объект включает все поля, объявленные в классе

· Конкретные значения полей характеризуют текущее состояние объекта

· Обращение к полям и методам: имя объекта.имя_поля

Имя_объекта.имя_метода()

Ограничение доступа:

· Все методы объекта имеют доступ к полям объекта

· Это реализуется за счет неявной передачи в метод параметра-указателя на объектах: Паскаль: self; C++, C#:this.

· Для обеспечения инкапсуляции в описании класса выделяют интерфейс(interface) и реализацию.

Класс <имя_класса>

Поля и методы, доступные извне


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: