1. В чем разница между операторами is и as в C#?

Оператор is используется для проверки совместимости типа объекта во время выполнения с заданным типом или нет, тогда как оператор as используется для выполнения преобразования между совместимыми ссылочными типами. или Nullable типы.

Оператор is имеет логический тип, тогда как оператор as не имеет логического типа.

Оператор is возвращает значение true, если данный объект относится к тому же типу, тогда как оператор as возвращает объект, если они совместимы с данным типом.

Оператор is возвращает false, если заданный объект не относится к тому же типу, тогда как оператор as возвращает null, если преобразование невозможно.

Оператор is используется только для преобразования ссылки, упаковки и распаковки, тогда как оператор as используется только для преобразования, допускающего значение NULL, ссылки и преобразования упаковки.

2. В чем разница между структурой и классом?

Структуры — это облегченные версии классов. Структуры являются типами значений и могут использоваться для создания объектов, которые ведут себя как встроенные типы.

3. Какая польза от оператора using в C#?

Оператор using в C# определяет границу объекта, за пределами которой объект автоматически уничтожается. Оператор using завершается, когда конец блока операторов «using» или выполнение выходит из блока операторов «using» косвенно, например — возникает исключение.

4. Можно ли выполнить несколько блоков catch?

No

5. Зачем использовать ключевое слово «const» в C#? Привести пример.

В C#, если мы используем ключевое слово const для объявления постоянного поля, то значение этого поля нельзя изменить во всем приложении, поэтому мы не должны использовать ключевое слово const с полями, значение которых будет изменено в любое время.

Чтобы определить постоянные поля в С#, нам нужно использовать ключевое слово const во время объявления полей в нашем приложении, и мы можем использовать константы с числами, логическими значениями, строками или нулевыми ссылками.

const data_type имя_поля = «значение»;

6. Перечислите два разных типа ошибок в C#? Зачем нам каждый?

Ошибка DivideByZeroException возникает всякий раз, когда программа пытается разделить на ноль. Чтобы справиться с этим изящно, защитите любой код, который выполняет арифметическое деление, в блоках try-catch, которые ищут это конкретное исключение.

Логические ошибки случаются, когда мы не получаем ожидаемого результата. Они не всегда приводят к сообщениям об ошибках, потому что технически они не являются «ошибками». Вместо этого это проблемы с логикой программирования. Взгляните на код ниже. Он пытается сложить числа от одного до десяти.

7. В чем разница между static, public и void в C#?

public : Ключевое слово public — это модификатор доступа, который сообщает компилятору C#, что метод Main доступен всем.

static : ключевое слово static объявляет, что метод Main является глобальным и может вызываться без создания экземпляра класса. Компилятор сохраняет адрес метода в качестве точки входа и использует эту информацию для начала выполнения до того, как будут созданы какие-либо объекты.

void : ключевое слово void — это модификатор типа, указывающий, что метод Main не возвращает никакого значения.