Фамилия, Имя _________________________ 1 2 3 4 5 6 7 8 1. В каком объекте классе должно находиться описание метода Main? a. В любом b. В классе MainApp c. В специальном классе, в котором может быть только один этот метод 9 10 11 12 13 14 15 Ответ направлять на a.s.tsvetkov@inbox.ru d. В классе, имя которого зависит от настроек компилятора 2. Какими значениями инициализируются строковые (string) поля классов? a. Пробелом b. Пустой строкой c. Никакими, необходимо явно инициализировать такие поля. d. Зависит от настроек компилятора 3. Какое значение выведет следующая программа? struct FOO { public int x,y; } class MainApp { public static int Main() { FOO f1 = new FOO(); FOO f2 = f1; f1.x = 1; f2.x = 3; f1.y = 2; f2.y = 4; Console.WriteLine("{0}", f2.x); } } a. 1 b. 2 c. 3 d. 4 c. 64 d. Зависит от ОС 4. Какую длину (в битах) имеет в C# тип long? a. 16 b. 32 5. Как правильно проверить тот факт, что строка s не пустая? a. if (s) … b. if (s!="") … c. if (s.Length) … d. if (s.Length!=0) … 6. Что определяет ключевое слово internal по отношению к методу класса? a. Общедоступный метод b. Доступен только внутри класса c. Доступен в методе и его потомках d. Доступен только в пределах сборки c. Только из созданного объекта d. Только из статических объектов 7. Статические методы можно вызывать … a. Только не создавая объект b. Как не создавая объект, так и из созданного объекта 8. Как правильно описать массив из 100 символьных строк? a. string[100] a; b. string[] a = new string[100]; c. string[100] a = new string; d. string a[100]; 9. Для переопределения виртуального метода в потомке в описании метода следует указать a. virtual b. override c. protected d. ничего дополнительно указывать не надо 16 10. Какое из приведенных описаний свойства, доступного только на чтение, P является правильным? a. public readonly int P { get { return p; } set { p = value; } } b. public property int P { get { return p; } } c. public int P { get { return p; } } d. public readonly property int P { get { return p; } set { p = value; } } 11. Что означает и где используется ключевое слово sealed a. Применяется к классу и указывает, на невозможность непосредственного использования этого класса b. Применяется к методу и указывает на невозможность перекрытия этого метода в потомках c. Применяется к классу и указывает на невозможность создания потомков у этого класса d. Применяется к методу и требует его обязательного перекрытия в потомках 12. Что можно сказать об A1 и A2 в следующем фрагменте? public class A3 : A1, A2 { } a. A1 – класс или интерфейс A2 – класс или интерфейс b. A1 – класс A2 –класс или интерфейс c. A1 –класс или интерфейс; A2 – интерфейс d. A1 – интерфейс; A2 – интерфейс 13. Какую ошибку вызовет компиляция следующего кода? using System; internal class Test { public static int Main() { throw new Exception("Some Exception"); } } a. Недопустим атрибут static у метода Main b. Тело метода не может состоять из создания исключения c. Не указано using System.Exception d. Программа не содержит никаких ошибок 14. Какая ошибка содержится в следующем коде? public class Point { public int x, y; public Point(){} public static bool operator ==(Point p1, Point p2) { return p1.Equals(p2); } } a. Ошибок нет, всё верно b. Не может быть конструктор с пустым телом c. Не описан метода Equals d. Отсутствует определение операции != 15. Предположим, что в классе описано событие public static event Support BuxBax, как его вызвать? a. event BuxBax; b. Support; c. BuxBax; d. event Support; 16. Допустим, что метод MaxVal класса MyMath должен вычислять максимальное значение функции от одного вещественного аргумента, передаваемой первым параметром. Какое из описаний будет верным? а. public delegate float fun(float x); public class MyMath { public float MaxVal(fun f) { … } } c. public class MyMath { public float MaxVal(float f(float x)) { … } } b. public float fun(float x); public class MyMath { public delegate float MaxVal(fun f) { … } } d. public class MyMath { public float MaxVal(float * f(float x)) { … } }