ТОП просматриваемых книг сайта:
Проектирование на UML. Сборник задач. Антон Сергеевич Хританков
Читать онлайн.Название Проектирование на UML. Сборник задач
Год выпуска 0
isbn 9785448579547
Автор произведения Антон Сергеевич Хританков
Жанр Компьютеры: прочее
Издательство Издательские решения
Типом данных (data type) называется классификатор, экземпляры которого не обладают индивидуальностью и, при совпадении значений свойств, взаимозаменяемы. Простыми (primitive), или примитивным типами данных, являются предопределенные типы: целое Integer, строка String, логический тип Boolean, числа с плавающей запятой Real и неограниченные натуральные числа UnlimitedNatural, которые используются для моделирования неопределенного количества элементов, например, экземпляров класса, участвующих в ассоциации.
Ограничением (constraint) называется логическое выражение об ограничиваемых элементах модели, вычисляемое в контексте какого-либо элемента. Если выражение ложно, то модель считается противоречивой (ill-formed).
Примеры нотации указанных выше элементов модели приведены на рис. 1 и рис. 2.
ЗАДАЧИ
1.1. Абстрактный класс Account имеет два дочерних класса: счет физического лица PersonalAccount и юридического CompanyAccount. При решении задачи используйте диаграммы классов.
а. Добавьте класс Person с общедоступным атрибутом FullName строкового типа и свяжите его с классом PersonalAccount ассоциацией Owns с полюсом owner у Person и навигируемым полюсом account у PersonalAccount.
б. Аналогично для счета юридического лица добавьте владельца Company, свяжите анонимной ассоциацией с CompanyAccount и укажите подходящие названия полюсов.
в. Добавьте класс адреса Address с атрибутами строкового типа street, city и целочисленным положительным building. Укажите с помощью новых анонимных ассоциаций, что Person может иметь адрес регистрации registeredAt, фактический адрес actual, в то время как компания связана с одним юридическим адресом legalAddress и может иметь почтовый адрес postAddress.
1.2. Интерфейс Stack определяет операции помещения в стек push с параметром obj типа Element, операцию получения элемента из стека pop с возвращаемым значением типа Element. При решении задачи используйте диаграммы классов.
а. Добавьте в интерфейс Stack операции очистки стека reset, которая не имеет параметров, статическую операцию создания нового стека createNew с возвращаемым значением типа Stack.
б. Покажите, что интерфейс Stack зависит от типа данных Element.
в. Добавьте класс ListStack, который реализует интерфейс Stack. Покажите реализуемые классом операции интерфейса.
г. Добавьте в класс ListStack частное структурное свойство arr типа Element с кратностью больше нуля, значения которого упорядочены и могут повторяться.
д. Добавьте частный целочисленный атрибут increment только для чтения и защищенную операцию изменения размера resize с целочисленным параметром newSize.
е. Покажите на диаграмме экземпляров экземпляр stack класса ListStack, свойство arr которого содержит элемент first типа Element первым и second того же типа вторым. Укажите, что атрибут increment экземпляра stack равен 10.
1.3. В пространстве имен Time расположены перечисления Month, DayOfWeek, а также классы Date и Period. При решении задачи используйте