Читайте также:
|
|
Объектами могут быть осязаемые и видимые предметы (дом, цветок и т.п.).
Объекты могут быть осязаемыми, но иметь размытые физические границы (реки, туман, толпы людей).
Объекты могут получаться из отношений между другими объектами.
5. Объясните следующие понятия: «состояние», «поведение», «идентичность» и «время жизни» объекта.
Состояние – перечень (обычно статический) всех свойств данного объекта и текущие (обычно динамические) значения каждого из свойств. К числу свойств относятся присущие или приобретаемые им характеристики, черты, качества, способности, делающие данный объект самим собой.
Состояние объекта – суммарный результат его поведения.
Поведение – то, как объект действует и реагирует. Поведение выражается в терминах состояния объекта и передачи сообщений (операций). Иными словами, поведене объекта – это его наблюдаемая и проверяемая извне деятельность. Операция – определенное воздействие одного объекта на другой с целью вызвать соотв. реакцию.
Идентичность – свойство объекта, которое отличает его от всех других объектов.
Время жизни – время между началом существования объекта(его создание, отведение участка памяти) и возвращением отведенного участка памяти.
Объекты создаются явно и неявно. В любом случае(при явном) вызывается конструктор.
Явно:
- При объявлении, тогда объект размещается в стеке.
- Размещение объекта, выделением ему память из кучи.
При явно и неявном уничтожении объекта вызывается деструктор
6. Объясните следующие понятия: «операция», «метод класса», «свободная подпрограмма».
Операция – определенное воздействие одного объекта на другой с целью вызвать соотв. реакцию.
Метод класса – операции в объектно - ориентированных языках, выполняемые над данным объектом и входящие в определение класса.
Свободная подпрограмма – операции, не являющиеся методами класса, и не зависимы от объекта. Они группируются в соответствии с классами, для которых они создаются. Все методы – операции, но не все операции – методы.
7. Опишите назначения следующих операций: модификатор, селектор, итератор, конструктор, деструктор.
Модификатор – операция, изменяющая состояние объекта.
Селектор – операция, считывающая состояние объекта, но не изменяющая состояния.
Итератор – операция, позволяющая организовать доступ ко всем частям объекта в строго определенной последовательности
Конструктор – операция создания объекта и/или его инициализации.
Деструктор – операция, освобождающая состояние объекта и/или разрушающая сам объект.
8. Объясните следующие понятия: «протокол», «роль» и «ответственность» объекта.
Протокол – совокупность методов и свободных подпрограмм, относящихся к конкретному объекту.
Роль – в нетривиальных абстракциях протокол, подразделенный на частные аспекты поведения.
Ответственность – знания, которые объект поддерживает и действия, которые объект может исполнить.
9. Объясните понятие «класс». Как соотносятся понятия «класс» и «объект»? Описание класса.
Класс – шаблон объектов.
Класс – некое множество объектов, имеющих общую структуру и общее поведение.
Класс - абстрактный тип данных, который включает в себя не только данные, но и функции и процедуры.
Понятие класса и объекта тесно связаны, но существует важное различие. Объект означает конкретную сущность, определенную во времени и пространстве. Класс определяет абстракцию существенного в объекте (его данные и поведение).
В графической нотации – прямоугольник:
- верхняя часть – имя и стереотип класса;
- средняя часть – атрибуты;
- нижняя часть – операции или поведение класса.
Атрибут – некоторая информация, характеризующая класс.
Атрибут – фрагмент информации, связанный с классом.
Статичный атрибут – атрибут, используемый всеми экземплярами класса.
Производный атрибут – атрибут, полученный из одного или нескольких атрибутов.
10. Опишите основные типы классов: параметризованный класс, класс-наполнитель, утилита параметризованного класса, утилита класса-наполнителя, метакласс, абстрактный класс.
Параметризированный класс – класс, применяемый для создания семейства других классов, он же шаблонный класс, контейнер, класс с аргументом(может быть любой класс, тип данных, константа).
Класс-наполнитель – параметризированный класс, аргументы которого имеют фактические значения.
Утилита класса – совокупность функций, используемых всей системой и не слишком подходящая для конкретного класса.
Утилита параметризованного класса – параметризованный класс, содержащий только набор операций. Это шаблон для создания утилит класса.
Утилита класса-наполнителя – утилита параметризованного класса, параметры которой имеют фактические значения.
Метакласс – класс, экземпляры которого являются классами, а не объектами.
Абстрактный класс - класс, который не наполняется конкретным содержимым, не инстанцируется, т.е. если класс А абстрактный, в памяти.
11. Объясните понятие «стереотип класса». Опишите основные стереотипы классов: «пограничные классы», «классы-сущности», «управляющие классы».
Стереотип – механизм, позволяющий классифицировать классы.
Пограничные классы (boundary classes) – классы, расположенные на границе системы со всем остальным миром. Вкл. в себя формы, отчеты, интерфейсы с аппаратурой. Для выявления исследовать диаграммы вариантов использования. Для каждого взаимодействия между действующим лицом и вариантом использования должен существовать хотя бы один пограничный класс.
Классы - сущности (entity classes) – классы, содержащие информацию, хранимую постоянно. Их можно обнаружить в потоке событий и на диаграммах взаимодействия.
Управляющие классы (control classes) отвечают за координацию действий других классов. У каждого вар. исп. есть один УК, контролирующий последовательность событий этого вар. исп.. Сам УК не несет в себе никакой функциональности. УК делегирует ответственность другим классам. УК называют классом-менеджером.
Дата добавления: 2015-01-30; просмотров: 46 | Поможем написать вашу работу | Нарушение авторских прав |