игра брюс 2048
Главная / Программирование / Основы объектно-ориентированного программирования / Тест 16

Основы объектно-ориентированного программирования - тест 16

Упражнение 1:
Номер 1
При повторном объявлении компонента

Ответ:

 (1) предусловие расширяет число ситуаций, допустимых у клиента 

 (2) предусловие сужает число ситуаций, допустимых у клиента 

 (3) постусловие ужесточает требования, предъявляемые к работе компонента 

 (4) постусловие ослабляет требования, предъявляемые к работе компонента 


Номер 2
Инвариант класса

Ответ:

 (1) совпадает с собственным (непосредственным) инвариантом класса – конъюнкцией утверждений из его раздела invariant 

 (2) является конъюнкцией собственного инварианта класса и собственного инварианта родителя 

 (3) если у класса нет собственного инварианта, то инвариант True играет эту роль 

 (4) является конъюнкцией собственных инвариантов всех предков класса 


Номер 3
Если наследник повторно объявляет компонент родителя, то, чтобы не обмануть клиентов, он должен

Ответ:

 (1) усилить или сохранить предусловие компонента 

 (2) усилить или сохранить постусловие компонента 

 (3) ослабить или сохранить предусловие компонента 

 (4) ослабить или сохранить постусловие компонента 


Упражнение 2:
Номер 1
Универсальные классы General и ANY - это библиотечные классы

Ответ:

 (1) позволяющие клиентам решать все нужные им задачи 

 (2) автоматически вызываемые в специальных случаях 

 (3) по определению являющиеся предками всех создаваемых классов 

 (4) содержащие атрибуты и методы, необходимые всем объектам независимо от их природы 


Номер 2
Контракты и субподряды. Под субподрядом понимается создание класса – наследника существующего класса. Субподрядчик

Ответ:

 (1) не вправе изменить существующий контракт 

 (2) обязан удовлетворить всем требованиям существующего контракта 

 (3) вправе улучшить для клиентов условия контракта 

 (4) может эффективнее выполнить работу, предусмотренную контрактом 


Номер 3
Замораживание компонента означает?

Ответ:

 (1) сохранение его интерфейса с возможностью изменений в скрытой части 

 (2) сохранение спецификаций потомком 

 (3) запрет потомкам изменять реализацию компонента 

 (4) запрет на переименование 


Упражнение 3:
Номер 1
Попытка присваивания

Ответ:

 (1) это специальное обобщение операции присваивания 

 (2) присваивание, заканчивающееся отказом 

 (3) предполагает динамическую проверку соответствия типов левой и правой части присваивания 

 (4) это присваивание цели значения void в случае несоответствия типов 


Номер 2
Структура семейства классов такова, что?

Ответ:

 (1) все классы имеют общего предка – класс General 

 (2) все классы имеют общего потомка – класс None 

 (3) общие свойства классов проекта задаются в классе Any – наследнике класса General 

 (4) разрешается в интересах эффективности изменять состав верхнего и нижнего классов иерархии - General и None 


Номер 3
Ограничение универсальности

Ответ:

 (1) означает, что при родовом порождении фактический параметр не может быть произвольного типа 

 (2) дает возможность задавать в качестве фактического параметра тип с заданным набором операций 

 (3) ограничивает возможности работы с объектами в сравнении с неограниченной универсальностью 

 (4) позволяет расширить набор операций, допустимых при работе с объектами 


Упражнение 4:
Номер 1
При повторном объявлении

Ответ:

 (1) требуется сохранение сигнатуры компонента 

 (2) разрешается изменение сигнатуры компонента 

 (3) разрешается произвольное изменение типа атрибута и типа аргументов у компонентов 

 (4) разрешается изменение типа атрибута и типа аргументов у компонентов в соответствии с правилами согласованности типов 


Номер 2
Закрепленное объявление – это способ?

Ответ:

 (1) абсолютного объявления типа 

 (2) относительного объявления типа 

 (3) при котором тип сущности объявляется подобным типу опорного элемента 

 (4) при котором изменение типа опорного элемента приводит к изменению типов всех закрепленных сущностей 


Номер 3
Экспорт и наследование

Ответ:

 (1) экспорт компонентов может быть выборочным; тот или иной компонент можно экспортировать одному или нескольким клиентам 

 (2) экспорт компонента клиенту еще не означает, что компонент экспортируется всем потомкам этого клиента 

 (3) экспорт компонента клиенту означает, что компонент экспортируется всем потомкам этого клиента 

 (4) все компоненты класса должны быть доступны его потомкам 


Упражнение 5:
Номер 1
Отметьте истинные высказывания

Ответ:

 (1) утверждения дают глубокое понимание природы наследования 

 (2) при повторном использовании интерфейсов скрывается информация о реализации 

 (3) наследование и скрытие информации – это взаимозависимые механизмы 

 (4) компонент, доступный классу, может быть не доступен его потомкам 


Номер 2
Отметьте истинные высказывания

Ответ:

 (1) у клиента нет возможности контроля изменения семантики операций создателями классов, пользующимися повторными объявлениями и динамическим связыванием 

 (2) повторное объявление должно удовлетворять утверждениям оригинальной подпрограммы 

 (3) попытка присваивания может заменить динамическое связывание 

 (4) при повторном использовании реализаций информация скрывается 


Номер 3
Отметьте истинные высказывания?

Ответ:

 (1) лишь понимание принципов Проектирования по Контракту позволяет в полной мере постичь сущность концепции наследования 

 (2) экспорт определяет отношения между классом и его потомками 

 (3) при повторном использовании интерфейсов реализация не защищена 

 (4) заморозив компонент, можно гарантировать его семантическую уникальность 




Главная / Программирование / Основы объектно-ориентированного программирования / Тест 16