Основы объектно-ориентированного программирования | ointuit.ru

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

oop

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

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

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

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

Правило прямого отображения требует, чтобы
прав.ответ модульная структура ПО непосредственно отображала структуру модели предметной области
модульная структура ПО непосредственно отображала структуру предметной области
модульная структура ПО непосредственно отображала структуру спецификаций

Верно ли, что различия между правилами, критериями и принципами модульности состоят в том, что
прав.ответ правила модульности следует выполнять при разработке ПО
между правилами, критериями и принципами нет различий – это синонимичные понятия
прав.ответ разрабатываемая система должна удовлетворять критериям модульности
прав.ответ механизмы ООП следует проектировать в соответствии с принципами

К правилам для обеспечения модульности относятся
непрерывность
композиция
прав.ответ явные интерфейсы
прав.ответ скрытие информации

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

Нужно ли создавать ПИК в процессе разработки системы?
всегда нет, поскольку это удорожает и замедляет процесс ее создания
прав.ответ только при наличии большого опыта и экономических предпосылок
всегда да, при наличии большого опыта
всегда да, поскольку это удешевляет и убыстряет процесс ее создания

Повторно использовать или переделывать
прав.ответ следует использовать объектный инструментарий (наследование, обертывание), удовлетворяющий критерию Открыт-Закрыт, допускающий расширяемость и повторное использование
если компонент лишь частично удовлетворяет потребностям, его следует переделать
повторно использовать следует лишь тот компонент, который полностью соответствует потребностям

Что представляет собой наиболее приемлемый образец, полезный для повторного использования?
прав.ответ компонент ПО
сценарий решения проблемы
описание алгоритма
спецификацию проблемы

Отметьте истинные высказывания?
прав.ответ образцы, описанные в литературе, частично решают проблему повторного использования
прав.ответ перегрузка метода является синтаксическим средством; она не решает важных проблем повторного использования и затрудняет читабельность текстов программ
универсальность решает все проблемы повторного использования
прав.ответ решение проблемы «повторно использовать или переделать» должно позволять сохранять одни свойства повторно используемого модуля и адаптировать другие

Проблемы повторного использования связаны с?
непрерывностью представлений
прав.ответ изменчивостью типов
прав.ответ вариацией представлений
прав.ответ взаимозависимостью операций

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

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

При проектировании системы типов можно использовать?
прав.ответ объекты физической реальности, к которой применяется ПО
объекты солнечной системы
прав.ответ объекты, описанные в литературе
прав.ответ повторно используемые объекты

Распределитель — это?
специальный вид контейнера данных, в котором клиент управляет размещением элементов
прав.ответ специальный вид контейнера данных, в котором размещение элементов определяется внутренней дисциплиной
системный администратор, распределяющий задания между исполнителями

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

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

Атрибут класса — это?
прав.ответ поле класса
прав.ответ компонент класса
прав.ответ часть структуры данных, представляющей объект
метод класса

Объект — это?
программный текст
статическая структура
прав.ответ динамическая структура, создаваемая в момент выполнения
прав.ответ экземпляр класса

Под динамическими псевдонимами понимается?
существование двух или более объектов, связанных с одной и той же сущностью
существование двух или более объектов с одинаковыми значениями полей
прав.ответ существование двух или более сущностей, присоединенных к одному и тому же объекту
существование двух или более сущностей с одинаковыми именами

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

При клонировании
прав.ответ при глубоком клонировании может создаваться несколько новых объектов
прав.ответ создается копия существующего объекта
изменяется состояние существующего объекта
при поверхностном клонировании копируется только открытая часть объекта

На основе изучения статического текста программы нельзя точно предсказать
прав.ответ когда будут созданы новые объекты
прав.ответ когда ранее присоединенные ссылки становятся пустыми
прав.ответ какие ссылки будут присоединены к объектам
прав.ответ какие объекты будут созданы

Присоединение y к x
использует y как цель
прав.ответ имеет место при вызове подпрограммы, когда формальный аргумент x заменяется фактическим y
прав.ответ использует x как цель
прав.ответ имеет место при присваивании y:=x

Работа по освобождении памяти, занятой недостижимыми объектами может вестись на уровне
прав.ответ приложения
прав.ответ исполнительной среды
прав.ответ компилятора
отдельной процедуры

Несерьезный подход в освобождении памяти может применяться?
прав.ответ в системах реального времени
прав.ответ в системах, где время жизни объектов совпадает с временем жизни работы приложения
прав.ответ в системах, где создается небольшое число объектов
в системах, ориентированных на работу в среде без сборщика мусора

Повторному использованию способствует объектный механизм наследования классов. Наследование позволяет классу иметь?
одного и только одного непосредственного родителя
прав.ответ одного или более непосредственных потомков
одного и только одного непосредственного потомка
прав.ответ одного или более непосредственных родителей

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

Корректно использовать сущность x, чей тип задан формальным родовым параметром G, можно?
прав.ответ как фактический аргумент в вызове подпрограммы на месте формальных параметров типа G, или типа ANY
в арифметических выражениях вида x+ y или x- y, где y также типа G
прав.ответ как цель вызова компонента класса ANY
прав.ответ в логических выражениях вида x = y или x /= y, где y также типа G

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

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

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

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

Каждый цикл
прав.ответ имеет инвариант, позволяющий доказать его корректность
прав.ответ имеет множество инвариантов
имеет инвариант, позволяющий доказать завершаемость цикла
имеет единственный инвариант

Частью контракта, заключаемого между классом-поставщиком и классами, являющимися его клиентами, является ?
гарантия клиентами выполнения всех предусловий методов класса в каждый момент выполнения клиентской программы
проверка предусловия в клиентской программе непосредственно перед вызовом метода и проверка постусловия сразу же по завершении метода
проверка предусловия в методе класса в тот момент, когда клиент вызывает этот метод
прав.ответ выполнение предусловия в клиентской программе непосредственно перед вызовом метода

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

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

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

В инструкции цикла
предложение from, задающее инициализацию, факультативно
проверка условия окончания цикла в предложении until выполняется в конце цикла
предложение invariant обязательно, а предложение variant, — факультативно
прав.ответ предложения invariant и variant, задающие инвариант и вариант цикла, факультативны

Вызов компонента
прав.ответ в форме x.f(…), где x – цель вызова, называется квалифицированным
квалифицированный вызов всегда может быть преобразован в неквалифицированный
прав.ответ всегда имеет цель вызова
прав.ответ в форме f(…) называется неквалифицированным

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

Отметьте истинные высказывания
прав.ответ обертывание чаще всего сводится к добавлению объектного интерфейса к необъектному содержанию
прав.ответ взаимодействие с внешним ПО разумно осуществлять на уровне компонентов
фактические аргументы при вызове не могут быть выражениями
прав.ответ операции ввода-вывода поддерживаются специальными классами FILE и STD_FILES

Полиморфизм – это способность обладать несколькими формами. Полиморфными могут быть?
прав.ответ присваивания и присоединения
прав.ответ методы
прав.ответ сущности
прав.ответ структуры данных

Отложенный компонент, отложенный класс
прав.ответ компонент является отложенным, если его реализация возлагается на потомка
класс является отложенным, если все его компоненты отложены
компонент является отложенным, если потомок переопределил реализацию, заданную его родителем
прав.ответ класс является отложенным, если он имеет хотя бы один отложенный компонент

Динамические и статические типы
прав.ответ сущность имеет динамический и статический типы
сущность имеет только статический тип
объект имеет динамический и статический типы
прав.ответ ссылка имеет динамический тип или может быть пустой

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

Браком по расчету называется такое множественное наследование, когда?
один класс предоставляет атрибуты (данные), а другой – процедуры и функции (действия)
когда получено одобрение предков на множественное наследование
прав.ответ один класс предоставляет спецификации, а другой – возможности их реализации
один класс является красивым, а другой – богатым

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

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

Закрепленное объявление – это способ?
прав.ответ относительного объявления типа
абсолютного объявления типа
прав.ответ при котором тип сущности объявляется подобным типу опорного элемента
прав.ответ при котором изменение типа опорного элемента приводит к изменению типов всех закрепленных сущностей

Универсальные классы General и ANY — это библиотечные классы
позволяющие клиентам решать все нужные им задачи
прав.ответ содержащие атрибуты и методы, необходимые всем объектам независимо от их природы
прав.ответ по определению являющиеся предками всех создаваемых классов
автоматически вызываемые в специальных случаях

Контракты и субподряды. Под субподрядом понимается создание класса – наследника существующего класса. Субподрядчик
прав.ответ вправе улучшить для клиентов условия контракта
прав.ответ может эффективнее выполнить работу, предусмотренную контрактом
не вправе изменить существующий контракт
прав.ответ обязан удовлетворить всем требованиям существующего контракта

При повторном объявлении
требуется сохранение сигнатуры компонента
разрешается произвольное изменение типа атрибута и типа аргументов у компонентов
прав.ответ разрешается изменение типа атрибута и типа аргументов у компонентов в соответствии с правилами согласованности типов
прав.ответ разрешается изменение сигнатуры компонента

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

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

Замораживание компонента означает?
запрет на переименование
сохранение спецификаций потомком
прав.ответ запрет потомкам изменять реализацию компонента
сохранение его интерфейса с возможностью изменений в скрытой части

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

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

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

Скрытие потомком – это?
скрытие потомком всех компонентов его родителя
прав.ответ запрет потомком экспортировать компонент, разрешенный к экспорту его родителем
запрет родителя классам потомкам экспортировать компоненты родителя
запрет, налагаемый родителем, на экспорт потомком некоторого компонента родительского класса

Наилучшим решением проблемы системной корректности является решение?
на основе глобального анализа всей системы
на основе закрепления
на основе введения понятия кэтколла
прав.ответ лучшее решение не найдено

Статическая типизация
возможна только для ОО-языков
прав.ответ позволяет обнаруживать многие ошибки еще на этапе компиляции
позволяет установить динамический тип сущности
анализирует состояние объектов в период выполнения

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

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

Отметьте истинные высказывания
задачи типизации и связывания могут быть решены только статически
прав.ответ приведение типа (кастинг) препятствует строгой статической типизации
прав.ответ в ряде случаев универсальность требуется ограничить
задачи типизации и связывания могут быть решены только динамически

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

Создание разделяемых объектов и разделяемых констант отличается тем, что?
прав.ответ для констант задаются инварианты, запрещающие изменять их значения
ничем не отличается
прав.ответ как константы, так и разделяемые объекты являются константными ссылками
прав.ответ в отличие от констант значения полей ссылки для разделяемых объектов изменяются в процессе работы

Константы
прав.ответ классы, которым требуются константы, как правило являются наследниками специальных классов с набором констант
прав.ответ собираются вместе в специальных классах, предоставляющих этот набор другим классам
классы, которым требуются константы, как правило являются клиентами специальных классов с набором констант
разных классов объявляются в самих классах

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

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

Значения Unique
прав.ответ для перечислений, чье множество значений может изменяться, вместо механизма Unique следует использовать наследование
прав.ответ служат для задания перечислений
прав.ответ следует использовать для перечислений с фиксированным набором значений
уникальные, редко используемые значения

В ОО-системах глобальные объекты
прав.ответ могут быть смоделированы
не нужны
существуют
прав.ответ не существуют

Добавить комментарий


Яндекс.Метрика