21. Дайте развернутое определение класса. Области видимости и действия классов в языке UML.

Классом (Class) называется описание совокупности объектов с общими атрибутами, операциями, отношениями и семантикой. Правильно сконструированный класс должен представлять одну и только одну абстракцию. Класс представляет не индивидуальный объект, а целую их совокупность.

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

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

Обязанности (Responsibilities) класса – это своего рода контракт, которому должен подчиняться класс. Соответствующие атрибуты и операции являются теми свойствами, посредством которых выполняются обязанности класса.

Одна из деталей, наиболее существенных для атрибутов и операций классификаторов, – их видимость. Видимость свойства говорит о том, может ли оно использоваться другими классификаторами. В языке UML можно определить три уровня видимости:

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

Еще одной важной характеристикой атрибутов и операций классификатора является область действия (Scope). Задавая область действия некоторого свойства, тем самым указывают, будет ли оно проявлять себя по–разному в каждом экземпляре классификатора, или одно и то же значение свойства будет разделяться (то есть совместно использоваться) всеми экземплярами. В UML определены два вида областей действия: