Главная / Программирование /
Основы программирования на C# / Тест 17
Основы программирования на C# - тест 17
Упражнение 1:
Номер 1
Какие утверждения справедливы для развернутых и ссылочных типов
Ответ:
 (1) структуры относятся к развернутым типам 
 (2) классы относятся к ссылочным типам 
 (3) в языке C# есть модификатор expand, позволяющий отнести класс к развернутому типу 
 (4) объектам развернутого типа память отводится в куче 
Номер 2
Особенностями структур являются
Ответ:
 (1) структуры не могут наследовать интерфейсы 
 (2) структуры могут наследовать интерфейсы 
 (3) поля структуры не могут быть инициализированы в момент объявления 
 (4) для структур нельзя создать собственный конструктор без аргументов 
Номер 3
Какие утверждения справедливы относительно взаимных преобразований структур в классы
Ответ:
 (1) для преобразования структуры в класс достаточно заменить слово struct словом class 
 (2) для преобразования класса в структуру всегда достаточно заменить слово class словом struct 
 (3) для преобразования класса в структуру иногда достаточно заменить слово class словом struct 
 (4) для преобразования класса в структуру всегда необходимо изменить конструктор класса 
 (5) для преобразования класса в структуру иногда необходимо изменить конструктор класса 
Упражнение 2:
Номер 1
Отметьте истинные высказывания:
Ответ:
 (1) сложение точки – структуры Point с размером – структурой Size дает новую точку 
 (2) у структуры нет конструкторов 
 (3) у структуры нет наследников 
 (4) сложение двух точек – структур Point создает линию – структуру Line 
Номер 2
Отметьте истинные высказывания
Ответ:
 (1) объект развернутого типа не разделяет отведенную ему память ни с каким другим объектом 
 (2) все значимые типы языка C# реализованы структурами 
 (3) присваивание структур является ссылочным присваиванием 
Номер 3
Отметьте истинные высказывания
Ответ:
 (1) поля структуры не могут быть ссылками 
 (2) структура наследует методы класса object
 
 (3) перечисление наследует методы класса object
 
 (4) структуры и перечисления – частные случаи классов 
Упражнение 3:
Номер 1
При создании объектов перечислений
Ответ:
 (1) нельзя вызывать конструктор 
 (2) требуется их явная инициализация 
 (3) объекты получают значение, даже если инициализация не задана 
Номер 3
Даны объявления структур:
Point pt1 = new Point(3,5),pt2;
Size sz1 = new Size(7,10), sz2;
Какие операторы присваивания ошибочны?
Ответ:
 (1) pt2 = pt1 +sz1;
 
 (2) sz2 = pt2;
 
 (3) pt2 +=pt1;
 
 (4) pt2 = pt1 +1;
 
Упражнение 4:
Номер 1
Перечисление – это
Ответ:
 (1) абстрактный класс 
 (2) класс без собственных методов 
 (3) класс без собственных полей 
Номер 2
Базовый класс для перечисления
Ответ:
 (1) всегда задается по умолчанию 
 (2) может быть задан по умолчанию 
 (3) может быть классом string 
Номер 3
Дано перечисление enum TC {red, blue, yellow}
и три переменных c1, c2, c3
этого класса. В результате присваиваний: с1 = TC.yellow; c2 = TC.blue; c3 = c1 | c2;
переменная с3
получит значение
Ответ:
 (1) red
 
 (2) blue
 
 (3) yellow
 
 (4) ни одно из этих значений 
Упражнение 5:
Номер 1
Правда ли, что:
Ответ:
 (1) константы разных перечислений могут совпадать 
 (2) в качестве базового класса для перечисления можно задать класс char
 
 (3) структура может быть родительским классом для другой структуры 
Номер 2
Дано перечисление enum TC {red, blue, yellow}
и три переменных c1, c2, c3
этого класса. В результате присваиваний: с1 = TC.yellow; c2 = TC.blue; c3 = c1 | c2;
эти переменные получат следующие значения базового типа:
Ответ:
 (1) 0, 1, 2 
 (2) 2, 1, 3 
 (3) 1, 2, 3 
 (4) 2, 1, 0 
Номер 3
Отметьте верные утверждения.
Ответ:
 (1) класс int
является структурой 
 (2) никакие операции не определены над объектами перечислений 
 (3) метод ToString
для объекта перечисления возвращает его значение, преобразованное в строку