игра брюс 2048
Главная / Программирование / Объектное программирование в классах на С# 3.0 / Тест 4

Объектное программирование в классах на С# 3.0 - тест 4

Упражнение 1:
Номер 1
 Перечисление - это частный случай класса. Укажите те компоненты, которые могут быть заданы в теле этого класса:

Ответ:

 (1) поля 

 (2) методы 

 (3) список возможных значений 

 (4) события 

 (5) встроенные классы 


Номер 2
 Укажите корректную синтаксическую формулу, задающую объявления перечисления 

Ответ:

 (1) [атрибуты][модификаторы]enum имя_перечисления {список_ полей}  

 (2) [атрибуты][модификаторы]enum имя_перечисления [:список_родительских_классов] {список_возможных_значений} 

 (3) [атрибуты][модификаторы]enum имя_перечисления[:базовый класс] {список_возможных_значений} 

 (4) [атрибуты][модификаторы]enum имя_перечисления[:базовый класс] {список_методов} 


Номер 3
 Укажите высказывания, истинные для перечислений:

Ответ:

 (1) у перечислений нет полей, нет методов, нет событий 

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

 (3) элементами списка возможных значений являются идентификаторы, как правило, имеющие содержательный смысл 

 (4) элементами списка возможных значений являются строковые константы 

 (5) элементами списка возможных значений являются числа 


Упражнение 2:
Номер 1
 В памяти компьютера значение объекта перечисления представлено:

Ответ:

 (1) вещественным числом 

 (2) целым числом 

 (3) константой типа string 

 (4) идентификатором 


Номер 2
 Базовым классом для перечислений может быть класс:

Ответ:

 (1) string  

 (2) char  

 (3) double  

 (4) любой целочисленный тип 


Номер 3
 По умолчанию значения перечисления, содержащего n элементов, проецируются на отрезок:

Ответ:

 (1) [0, n-1] типа byte  

 (2) [0, n-1] типа int 

 (3) [1, n] типа byte  

 (4) [1, n] типа int  


Упражнение 3:
Номер 1
 При задании перечисления:

Ответ:

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

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

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

 (4) для каждого значения перечисления можно указать свой отрезок базового класса, на числа которого некоторым случайным образом будет проецироваться это значение 


Номер 2
 Укажите истинное высказывание:

Ответ:

 (1) перечисление должно быть объявлено с модификатором static  

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

 (3) перечисление не может быть объявлено с модификатором static, поскольку перечисление всегда задает некоторый тип данных 


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

Ответ:

 (1) над объектами перечисления никакие операции не заданы 

 (2) объекты перечисления можно только сравнивать на равенство и неравенство 

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

 (4) над объектами перечисления определены операции сравнения и логические побитовые операции. 


Упражнение 4:
Номер 1
 Укажите высказывания, истинные для конструкторов перечислений:

Ответ:

 (1) у перечислений только один конструктор 

 (2) у перечислений нет конструкторов 

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

 (4) единственный конструктор перечисления нельзя переопределить 


Номер 2
 Над объектами перечисления определены следующие операции:

Ответ:

 (1) сравнения на равенство и неравенство (==, !=) 

 (2) сравнения на больше, меньше ( >,<,>=, <=) 

 (3) сложения (+) 

 (4) побитовые логические операции (~, &, |, ^) 

 (5) логические операции (!, &&, ||) 

 (6) операции сдвига (>>,<<) 


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

Ответ:

 (1) возможные значения двух разных перечислений не могут совпадать 

 (2) возможные значения двух разных перечислений могут совпадать 

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


Упражнение 5:
Номер 1
 

Пусть дано описание перечисления

public enum Profession { плотник, столяр, водитель, учитель, врач }

В результате выполнения фрагмента кода

Profession worker = new Profession(); worker = worker | Profession.столяр | (Profession.учитель & Profession.водитель); Console.WriteLine(worker.ToString());

будет напечатано:


Ответ:

 (1) водитель 

 (2) врач 

 (3) учитель 

 (4) столяр 


Номер 2
 

Пусть дано описание перечисления

public enum Profession { плотник, столяр, водитель, учитель, врач }

В результате выполнения фрагмента кода

Profession worker = Profession.плотник; worker = worker | Profession.столяр | (Profession.врач & Profession.учитель); Console.WriteLine(worker.ToString());

будет напечатано:


Ответ:

 (1) врач 

 (2) столяр 

 (3) учитель 

 (4) плотник 


Номер 3
 

Пусть дано описание перечисления

public enum Profession { плотник, столяр, водитель, учитель, врач }

В результате выполнения фрагмента кода

Profession worker = Profession.плотник; worker = worker | Profession.столяр | (Profession.врач | Profession.учитель); Console.WriteLine(worker.ToString());

будет напечатано:


Ответ:

 (1) врач 

 (2) столяр 

 (3) учитель 

 (4) плотник 

 (5)


Упражнение 6:
Номер 1
 Укажите высказывания, истинные для перечислений из n элементов, заданных шкалой:

Ответ:

 (1) содержательно объект перечисления задает набор из n бинарных свойств реальных объектов 

 (2) шкалы позволяют эффективно хранить информацию о свойствах реальных объектов 

 (3) шкалы позволяют эффективно находить среди множества объектов те объекты, которые обладают заданным набором свойств 

 (4) любое перечисление следует задавать как шкалу 


Номер 2
 Перечисление из n элементов задано шкалой и определяет n бинарных свойств. Пусть x - это число, задающее значение объекта перечисления. Укажите высказывания, истинные для числа x:

Ответ:

 (1) если x = 0, то это означает, что объект не обладает ни одним свойством 

 (2) если math, то это означает, что объект обладает ровно одним свойством 

 (3) если значение числа x увеличивается, то это означает, что увеличивается число свойств, которыми обладает объект 

 (4) если x принадлежит интервалу math, то это означает, что объект обладает некоторым набором свойств 

 (5) если x больше чем число math, то теряется содержательный смысл объекта перечисления 

 (6) значение x большее, чем число math, для перечислений, задающих шкалу, недопустимо и вызывает ошибку на этапе выполнения 


Номер 3
 Шкалой называется перечисление, содержащее n элементов, у которого:

Ответ:

 (1) элементы перечисления отображаются в отрезок [1, n] типа int 

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

 (3) элемент перечисления с номером k отображается в число math при условии, что нумерация элементов начинается с нуля 


Упражнение 7:
Номер 1
 

Пусть дано описание перечисления, заданного шкалой

[Flags] public enum Profession { плотник = 1, столяр = 2, водитель = 4, учитель = 8, врач = 16 }

В результате выполнения фрагмента кода

Profession worker = new Profession(); worker = worker | Profession.столяр | (Profession.учитель & Profession.водитель); Console.WriteLine(worker.ToString());

будет напечатано:


Ответ:

 (1) водитель 

 (2) врач 

 (3) учитель 

 (4) столяр 


Номер 2

Пусть дано описание перечисления, заданного шкалой

[Flags] public enum Scale_Profession { плотник = 1, столяр = 2, водитель = 4, учитель = 8, врач = 16 }

В результате выполнения фрагмента кода

Scale_Profession worker = Scale_Profession.плотник; worker = worker | Scale_Profession.столяр | (Scale_Profession.врач & Scale_Profession.учитель); Console.WriteLine(worker.ToString());

будет напечатано:


Ответ:

 (1) врач 

 (2) столяр 

 (3) плотник, столяр 

 (4) плотник 


Номер 3
 

Пусть дано описание перечисления, заданного шкалой

[Flags] public enum Profession { плотник = 1, столяр = 2, водитель = 4, учитель = 8, врач = 16 }

В результате выполнения фрагмента кода

Profession worker = Profession.плотник; worker = worker | Profession.столяр | (Profession.врач | Profession.учитель); Console.WriteLine(worker.ToString());

будет напечатано:


Ответ:

 (1) врач 

 (2) столяр 

 (3) учитель 

 (4) плотник 

 (5) плотник, столяр, учитель, врач 




Главная / Программирование / Объектное программирование в классах на С# 3.0 / Тест 4