Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Ассоциация



Пример. Желая автоматизировать розничную торговую точку, мы обнаруживаем две абстракции – товары и продажи. Введем два класса: класс Product – это то, что мы продали в некоторой сдел­ке, а класс Sale – сама сделка, в которой продано несколько товаров.

class Product; class Sale;

class Product {

Sale* lastSale;

...

};

class Sale {

Product** productSold;

...

};

Ассоциация – смысло­вая связь. По умолчанию, она не имеет направления и не объясняет, как классы общаются друг с другом. Мы можем только отметить семантическую зависимость, указав, какие роли играют классы друг для друга.

Так, ассоциация "Product – Sale" – двустороннее отношение: задавшись товаром, можно выйти на сдел­ку, в которой он был продан, а пойдя от сделки, найти, что было продано.

Кратность (мощность) ассоциации – это количество ее участников. Различают три случая кратности ассоциации:

– один-к-одному;

– один-ко-многим;

– многие-ко-многим.

Рассмотренная в примере ассоциация имеет тип один-ко-многим: каждый экземпляр товара относится только к одной последней продаже, в то время как каждый экземпляр Sale может указывать на совокупность проданных товаров.

Отношение один-к-одному обозначает очень узкую ассоциацию. Например, в розничной системе продаж примером могла бы быть связь между классом "Продажа" и классом "Снятие денег с кредитной карточки": каждая продажа соответствует ровно одному снятию денег с данной кредитной карточки.

Отношение многие-ко-многим тоже нередки. Например, каждый объект класса "Покупатель" может иници­ировать сделку с несколькими объектами класса "Торговый агент", и каждый "Торговый агент" может взаимодействовать с несколькими объектами класса "Покупатель".

Класс может иметь ас­социацию с самим собой. Такая ас­социация называется рефлексивной.





Дата публикования: 2015-04-06; Прочитано: 404 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...