игра брюс 2048
Главная / Программирование / Программирование на языке высокого уровня C# / Тест 7

Программирование на языке высокого уровня C# - тест 7

Упражнение 1:
Номер 1
Возможность иметь в одном классе несколько методов с одним именем – это

Ответ:

 (1) Overriding (переопределение) 

 (2) Overloading (перегрузка) 

 (3) Inheritance (наследование) 

 (4) Encapsulation (инкапсуляция) 


Номер 2
Какое из следующих утверждений истинно?

Ответ:

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

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

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

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


Номер 3
Выберите правильные утверждения

Ответ:

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

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

 (3) при перегрузке операций сохраняются правила ассоциации, используемые в стандартных типах данных 

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


Упражнение 2:
Номер 1
Выберите правильные утверждения :

Ответ:

 (1) для стандартных типов данных переопределять операции нельзя 

 (2) операции могут иметь аргументы по умолчанию 

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

 (4) операции класса должны определяться как static 


Номер 2
Выберите правильные утверждения

Ответ:

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

 (2) операции класса могут иметь одинаковые сигнатуры 

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

 (4) операции должны определяться как public 


Номер 3
Выберите правильные утверждения

Ответ:

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

 (2) при перегрузке операции можно задать ее приоритет 

 (3) параметры в операцию передавать запрещается 

 (4) все операции класса должны определяться как public static 


Упражнение 3:
Номер 1
Выберите правильные утверждения

Ответ:

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

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

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

 (4) все операции класса должны определяться как нестатические (обычные) 


Номер 2
Какая из следующих операций не может быть перегружена?

Ответ:

 (1) + 

 (2) - 

 (3) ?: 

 (4) == 


Номер 3
Какая из следующих операций не может быть перегружена?

Ответ:

 (1) \# 

 (2) - 

 (3) < 

 (4) * 


Упражнение 4:
Номер 1
Какая из следующих операций не может быть перегружена?

Ответ:

 (1) * 

 (2) - 

 (3) sizeof 

 (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) *= 


Упражнение 6:
Номер 1
Какая из следующих операций при перегрузке в классе не может иметь возвращаемое значение булевского типа?

Ответ:

 (1) - 

 (2) != 

 (3) < 

 (4) == 


Номер 2
Какой из приведенных ниже методов реализует перегрузку унарной операции ++?

Ответ:

 (1) public static Mhz ++operator (Mhz mhz) {...} 

 (2) public operator++ Mhz (Mhz mhz) {...} 

 (3) public static Mhz operator++ (Mhz mhz) {...} 

 (4) public Mhz operator++ (Mhz mhz) {...} 


Номер 3
Какой из приведенных ниже методов реализует перегрузку унарной операции ++?

Ответ:

 (1) public Mhz ++operator (Mhz mhz) {...} 

 (2) public static Mhz ++operator (Mhz mhz) {...} 

 (3) public operator++ Mhz (Mhz mhz) {...} 

 (4) public static Mhz operator++ (Mhz mhz) {...} 


Упражнение 7:
Номер 1
Выберите правильные утверждения

Ответ:

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

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

 (3) класс является абстрактным, если в нем есть абстрактные методы 

 (4) абстрактный класс может содержать неабстрактные (обычные) методы 


Номер 2
Выберите правильные утверждения

Ответ:

 (1) класс, с котором есть хотя бы один обычный метод, не является абстрактным 

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

 (3) абстрактный класс задает интерфейс для всей иерархии своих потомков 

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


Номер 3
Какое из приведенных утверждений об абстрактном классе является неправильным?

Ответ:

 (1) можно определить параметр метода, имеющий тип абстрактного класса 

 (2) можно создавать объекты абстрактного класса 

 (3) абстрактный класс имеет как минимум один абстрактный метод 

 (4) абстрактный класс может иметь потомков 


Упражнение 8:
Номер 1
Если класс, производный от абстрактного, не определяет все его абстрактные методы, он является:

Ответ:

 (1) абстрактным 

 (2) виртуальным 

 (3) открытым 

 (4) закрытым 


Номер 2
Выберите НЕправильные утверждения

Ответ:

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

 (2) класс является абстрактным, если в нем есть абстрактные методы 

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

 (4) абстрактный класс может содержать неабстрактные (обычные) методы 


Номер 3
Выберите НЕправильные утверждения

Ответ:

 (1) класс, в котором есть хотя бы один обычный метод, не является абстрактным 

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

 (3) абстрактный класс задает интерфейс для всей иерархии своих потомков 

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


Упражнение 9:
Номер 1
Какое из следующих утверждений неверно?

Ответ:

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

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

 (3) деструктор не может быть объявлен как const 

 (4) деструктор может быть объявлен как static 


Номер 2
Какое из следующих утверждений неверное?

Ответ:

 (1) деструктор описывается с помощью ключевого слова destructor 

 (2) имя деструктора соответствует имени класса, предваренному тильдой 

 (3) деструктор возвращает ссылку на удаляемый объект 


Номер 3
Что используется в C# для освобождения памяти из-под объектов?

Ответ:

 (1) сборщик мусора 

 (2) деструктор объекта 

 (3) метод Free 

 (4) метод Delete 


Упражнение 10:
Номер 1
Что используется в C# для выделения памяти под объекты?

Ответ:

 (1) операция new 

 (2) процедура new 

 (3) метод new 

 (4) метод CreateObject 


Номер 2
Освобождает ли динамическую память деструктор с пустым телом?

Ответ:

 (1) да 

 (2) нет 


Номер 3
Гарантирует ли среда выполнение деструктора?

Ответ:

 (1) да 

 (2) нет 


Упражнение 11:
Номер 1
Как влияет наличие деструктора объекта на процесс сборки мусора?

Ответ:

 (1) никак 

 (2) ускоряет его работу 

 (3) замедляет его работу 


Номер 2
Какое из приведенных ниже утверждений ЛОЖНО в применении к классам?

Ответ:

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

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

 (3) если не определен конструктор, будет создан конструктор по умолчанию 

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


Номер 3
Что из приведенного определяет финализатор (деструктор) класса "CSharp"?

Ответ:

 (1) CSharp(){...} 

 (2) Finalizer(){...} 

 (3) Dispose(){...} 

 (4) CSharp_OnTerminate(){...} 




Главная / Программирование / Программирование на языке высокого уровня C# / Тест 7