Главная / Программирование /
Основы объектно-ориентированного проектирования / Тест 6
Основы объектно-ориентированного проектирования - тест 6
Упражнение 1:
Номер 1
Пусть имеется класс Person, описывающий персону и класс Car, задающий автомобиль. Класс Owner_Car, описывающий владельца машины должен быть?
Ответ:
 (1) клиентом классов Person и Car 
 (2) наследником классов Person и Car 
 (3) клиентом класса Person и наследником класса Car 
 (4) наследником класса Person и клиентом класса Car 
Номер 2
При выборе отношения, которым должны быть связаны классы – клиентским или наследования, следует учитывать, что?
Ответ:
 (1) если существуют аргументы в пользу того, что экземпляры класса А "являются" экземплярами класса В, то классы связаны отношением наследования 
 (2) если экземпляры класса А "имеют" (обладают) экземплярами класса В, то классы связаны клиентским отношением 
 (3) зачастую понятие "иметь" можно свести к понятию "является" 
 (4) зачастую понятие "является" можно свести к понятию "иметь" 
Номер 3
Используйте наследование для отношения, воспринимаемого как "является"
Ответ:
 (1) всегда 
 (2) только при условии, что отношение между объектами постоянно 
 (3) только при условии, что компоненты соответствующего объекта могут изменять тип в период выполнения 
 (4) никогда 
Упражнение 2:
Номер 1
При введении иерархии классов каждый наследник обязан выполнить по крайней мере одно из следующих условий
Ответ:
 (1) ввести новый компонент 
 (2) переобъявить наследуемый компонент 
 (3) удалить компонент родителя 
 (4) добавить предложение в инвариант класса 
Номер 2
Пусть классу В нужны специфические свойства классов C, D, …E. Техника описателей предполагает, что взаимодействие организуется следующим образом
Ответ:
 (1) класс В становится наследником классов C, D, …E 
 (2) класс В становится клиентом классов C, D, …E 
 (3) класс В становится наследником класса A, потомками которого являются классы C, D, …E 
 (4) класс В становится клиентом класса A, потомками которого являются классы C, D, …E 
Номер 3
Наследование применяется в различных ситуациях. Классификация включает следующие случаи наследования
Ответ:
 (1) с ограничением 
 (2) с расширением 
 (3) по завещанию 
 (4) подтипов 
Упражнение 3:
Номер 1
Наследование применяется в различных ситуациях. Классификация включает следующие случаи наследования
Ответ:
 (1) родственное 
 (2) с вариациями 
 (3) реализации 
 (4) льготное 
Номер 2
Наследование применяется в различных ситуациях. Классификация включает следующие случаи наследования
Ответ:
 (1) с конкретизацией 
 (2) вида 
 (3) семейное 
 (4) бесплатное 
Номер 3
Типичные ошибки применения наследования
Ответ:
 (1) таксономия 
 (2) множественное наследование 
 (3) наследование там, где имеет место клиентское отношение 
 (4) наследование по расчету 
Упражнение 4:
Номер 1
При наследовании
Ответ:
 (1) инвариант родителя автоматически является частью инварианта наследника 
 (2) предусловие подпрограмм, возможно ослабленное, применимо к любому ее переопределению у потомка 
 (3) предусловие подпрограмм, возможно усиленное, применимо к любому ее переопределению у потомка 
 (4) любое свойство на выходе подпрограммы, специфицированное для экземпляра родителя, будет также выполняться экземплярами наследника 
Номер 2
Наследование представляет собой
Ответ:
 (1) определение нового типа как специального случая существующего типа 
 (2) определение нового модуля как расширения уже существующего модуля 
 (3) следует применять только расширение модуля  
 (4) следует применять только определение подтипа 
Номер 3
Возможные ситуации (12), требующие наследования разделяются на следующие категории
Ответ:
 (1) наследование модели 
 (2) наследование реального мира 
 (3) программное наследование 
 (4) наследование вариаций 
Упражнение 5:
Номер 1
Отметьте истинные высказывания
Ответ:
 (1) каждый компонент, применимый клиентом к экземплярам родительского класса, тем же клиентом может быть применен к экземплярам наследника 
 (2) следует предпочитать наследование, принадлежащее ровно одной допустимой категории 
 (3) наследование модели, отражает отношение "является", существующее между абстракциями, характерными для самой модели 
 (4) наследование подтипов не имеет аналогов в реальном мире 
Номер 2
Отметьте истинные высказывания
Ответ:
 (1) из-за скрытия потомком не каждый компонент, применимый клиентом к экземплярам родительского класса, тем же клиентом может быть применен к экземплярам наследника 
 (2) брак по расчету при наследовании означает заключение специального контракта между классами 
 (3) наследование реализации нарушает отношение "является" 
 (4) при льготном наследовании наследуется класс, предоставляющий полезные свойства 
Номер 3
Отметьте истинные высказывания
Ответ:
 (1) не все категории наследования известны 
 (2) наследование требует доказательства того, что каждый экземпляр B является также экземпляром A 
 (3) выбор между отношением наследования и клиентским всегда прост 
 (4) наследование подходит для описания отношения, воспринимаемого как "является", если для сущностей может возникнуть потребность присоединения к объектам различных типов