ВУЗ:
Составители:
Для покрытия основных отношений большинство объектно-ориентированных
языков программирования поддерживает следующие отношения:
− ассоциация;
− наследование;
− агрегация;
− зависимость;
− конкретизация.
Ассоциации обеспечивают взаимодействия объектов, принадлежащих разным классам.
Они являются клеем, соединяющим воедино все элементы программной системы.
Благодаря ассоциациям мы получаем работающую систему. Без ассоциаций система
превращается в набор изолированных
классов-одиночек.
Наследование — наиболее популярная разновидность отношения обобщение-
специализация. Альтернативой наследованию считается делегирование. При
делегировании объекты делегируют свое поведение родственным объектам. При этом
классы становятся не нужны.
Агрегация обеспечивает отношения целое-часть, объявляемые для экземпляров
классов.
Зависимость часто представляется в виде частной формы — использования, которое
фиксирует отношение между клиентом, запрашивающим
услугу, и сервером,
предоставляющим эту услугу.
Конкретизация выражает другую разновидность отношения обобщение-
специализация.
Ассоциации классов
Ассоциация обозначает семантическое соединение классов.
Пример: в системе обслуживания читателей имеются две ключевые абстракции —
Книга и Библиотека. Класс Книга играет роль элемента, хранимого в библиотеке. Класс
Библиотека играет роль хранилища для книг.
Рис. 5. Ассоциация.
Отношение ассоциации между классами изображено на рис.5. Очевидно, что
ассоциация предполагает двухсторонние отношения:
− для данного экземпляра Книги выделяется экземпляр Библиотеки,
обеспечивающий ее хранение;
− для данного экземпляра Библиотеки выделяются все хранимые Книги.
Здесь показана ассоциация один-ко-многим. Каждый экземпляр Книги имеет
указатель на экземпляр Библиотеки. Каждый
экземпляр Библиотеки имеет набор указателей
на несколько экземпляров Книги.
Ассоциация обозначает только семантическую связь. Она не указывает
направление и точную реализацию отношения. Ассоциация пригодна для анализа
проблемы, когда нам требуется лишь идентифицировать связи. С помощью создания
ассоциаций мы приходим к пониманию участников семантических связей, их ролей,
мощности, (количества элементов).
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »