Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Добавление параметризованного класса

Поиск

Параметризованный класс (parameterized class) — один из специальных типов классов. Он применяется для создания семейства других классов. Обычно параметризованный класс является разновидностью контейнера, его еще называют шаблоном. В частности, если у вас есть параметризованный класс List (Список), то с помощью экземпляров этого класса вы можете создать такие классы, как EmployeeLisi OrderList и AccountList (соответствующие спискам сотрудников, заказов и счетов), как показан* ниже.

На языке UML параметризованный класс изображается с помощью следующей нотации:

Для добавления параметризованного класса:

· Нажмите кнопку Parameterized Class (Параметризованный класс) панели инструментов.

· Щелкните мышью где-нибудь на диаграмме, чтобы поместить туда новый класс.

· Введите имя класса.

Задание аргументов параметризованного класса

Аргументы класса указываются в прямоугольнике, выделенном пунктирными линиями. На основе ар­гументов создаются элементы стандартного класса. Например, если в приведенной выше нотации за­менить параметр "Элемент" специфическим элементом, например Employee (Сотрудник), то будет инициализирован класс EmployeeList.

Аргументом может быть другой класс, тип данных или выражение-константа. Вы можете задавать неограниченное количество аргументов.

Для добавления аргумента:

· Откройте окно спецификации класса.

· Перейдите на вкладку Detail (Подробно).

· Щелкните правой кнопкой мыши в поле Name области Formal Arguments (Формальные аргу­менты).

· В открывшемся меню выберите пункт Insert (Вставить).

· Введите имя аргумента.

· Щелкнув мышью, раскройте список Туре (Тип). Выберите один из типов аргумента или введите свой

· Щелкните в поле Default Value (Значение по умолчанию) и введите значение аргумента по умол­чанию. (Это делать не обязательно.)

Создание класса-наполнителя

Класс-наполнитель (instantiated class) является параметризованным классом, аргументы которого име­ют фактические значения. В частности, в рассмотренном выше примере мы имеем дело со списком некоторых элементов. Определив значение аргумента, мы получим список сотрудников. В соответст­вии с нотацией UML, имя аргумента класса-наполнителя заключается в угловые скобки (< >)

Для добавления класса-наполнителя:

· Нажмите кнопку Instantiated Class панели инструментов.

· Щелкните мышью на диаграмме там, где будет располагаться новый класс.

· Введите имя класса с аргументами, заключив их в угловые скобки (< >).

Добавление утилиты класса

Утилита класса (class utility) — это совокупность операций. Например, в вашей системе может быть со­вокупность математических функций (квадратный корень, кубический корень и т.д.), которые исполь­зуются всей системой и не слишком хорошо подходят для какого-либо конкретного класса. Эти функции можно собрать вместе и объединить в утилиту класса, которая будет использоваться другими классами системы.

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

Утилита класса выглядит на диаграмме как класс "с тенью":

Для добавления утилиты класса:

· Нажмите кнопку Class Utility (Утилита класса) панели инструментов.

· Щелкните мышью на диаграмме там, где будет находиться новый класс.

· Введите его имя.

Добавление утилиты параметризованного класса

Утилитой параметризованного класса (parameterized class utility) является параметризованный класс держащий только набор операций. Это шаблон для создания утилит класса. На диаграмме классов выглядит следующим образом:

Для добавления утилиты параметризованного класса:

· Нажмите кнопку Parameterized Class Utility (Утилита параметризованного класса) панели инст­рументов.

· Щелкните мышью на диаграмме там, где будет находиться новый класс.

· Введите его имя.



Поделиться:


Последнее изменение этой страницы: 2016-04-18; просмотров: 227; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.15.228.171 (0.007 с.)