Пример 4.5.

Если необходимо декларировать, что связи starredln класса star и starsOf класса Movie являются взаимно обратными, следует исправить объявления этих классов так (здесь также присутствует объявление класса studio, к которому мы обратимся позже). Строка 6 содержит объявление связи starsOf класса Movie и свидетельствует, что эта связь является обратной по отношению к связи star::starredln. Поскольку связь starredln объявлена в другом классе, ее имени здесь предшествуют название класса (star) и два символа двоеточия. Напомним, что два символа двоеточия всегда используются в ODL при необходимости задания ссылки на член другого класса.
Объявление другой связи, starredln, приведено в строке 11. В нем также зафиксирован факт наличия обратной связи: inverse Movie: : starsOf. Так и должно быть, поскольку взаимообратные связи всегда объединяются в пары.
Рассмотрим общее правило: если некоторая связь R класса С ставит в соответствие объекту х класса С набор объектов класса D, то связь, обратная по отношению к R, должна соединять каждый из объектов у, с объектом х (возможно, наряду с другими объектами). Иногда оказывается полезным отобразить связь R класса С с классом D в виде списка пар значений, или кортежей, некоторого отношения.

Предлагаю посетить сайт, где собрано большое количество статей и новостей по тематике Все о компьютерах и интернете. Подписался на этот сайт и теперь слежу за новинками на IT рынки и о новых проектах появляющихся в сети интернет.


Интересные записи

Написать комментарий