Разбор теста от proglib.io, ч.3

17. Что является идентификатором метода при перегрузке?

  • имя и параметры;
  • модификаторы доступа, возвращаемый тип и параметры;
  • имя, параметры, возвращаемый тип;
  • параметры и модификаторы доступа.

18. Что означает ключевое слово "params"?

  • Параметр метода будет принимать переменное число аргументов.
  • Инициирует передачу аргументов по ссылке.
  • Ссылается на глобальное пространство имён.
  • Ссылается на переданные аргументы командной строки.

19. Что из ниже перечисленного не может иметь модификатор "virtual"?

  • методы;
  • свойства;
  • индексаторы;
  • поля.

20. Какой результат выполнения следующей программы?

public class A
{
    private string name = "Name";

    public void Display()
    {
        Display2(ref name, ref name);
        Console.WriteLine(name);
    }

    public void Display2(ref string x, ref string y)
    {
        Console.WriteLine(name);
        x = "Name 1";
        Console.WriteLine(name);
        y = "Name 2";
        Console.WriteLine(name);
        name = "Name 3";
    }
}
class Program
{
    static void Main(string[] args)
    {
        A overload = new A();
        overload.Display();
        Console.ReadKey();
    }
}
  • Произойдёт ошибка компиляции.
  • Name 1 Name 2 Name 3 Name.
  • Name Name 1 Name 2 Name 3.
  • Четвёртый вариант.

21. Среди перечисленных конструкций укажите определение индексатора.

  • string GetName { } { return "Name"; }
  • string Name [int i]
  • string Name { get { return "Name"; } }
  • string this [int i] { get { return "Name"; } }

P.S. Ничего не знал про индексаторы. Не угадал.

22. Что выведет на экран программа ниже?

class Program
{
    static void Main(string[] args)
    {
        string s;
        s += "string";
        Console.WriteLine(s);
    }
}
  • string;
  • "string";
  • возникнет ошибка компиляции;
  • возникнет ошибка времени выполнения.

P.S. Дааа, строки надо инициализировать.

23. Как правильно определять структуры?

  • struct <Имя структуры> () { ... }
  • struct <Имя структуры> (string[ ] args) { ... }
  • struct { ... }
  • struct <Имя структуры> { ... }

24. Какой из перечисленных типов не является значимым?

  • float;
  • class;
  • struct;
  • int.