
- •Электронные устройства.
- •Организация эвм
- •Объектно-ориентированное программирование (Язык c#) - копипаста с выложенного на форум архива
- •19. Чем интерфейс отличается от класса в языке c#?
- •20. Что означает ключевое слово try в языке c#?
- •21. Возможен ли в языке c# доступ в методе производного класса к унаследованным из базового класса полям?
- •30. Для каких типов данных в языке c# базовым является тип object?
- •31. Какой тип не относится к ссылочным типам языка c#?
- •Объектно-ориентированное программирование (Язык c#)
- •4) Что возвращает оператор new в языке c#? Создается экземпляр объекта
- •15) Каков доступ по умолчанию к полям структуры (struct) в языке c#? private
- •24) В каком случае через ссылку на объект класса с# доступен для вызова метод ToString?
- •27) Какие данные не относятся к пользовательским типам языка c# (то есть, к типам, определяемым программистами)?
- •35) Где могут использоваться статические поля классов в языке c#?
- •36) Какие права доступа задают модификаторы доступа internal и protected в языке c#?
- •50) Как присвоить значение переменной b типа bool переменной n типа int?
- •53) Экземпляры каких типов могут быть элементами стандартных массивов языка c#?
- •Технология проектирования Intranet-приложений
- •5. К какому типу ссылок относится тег:
- •34. Обработчик какого события может задаваться только в теге body?
- •Технология программирования
- •Операционные системы - фаи-Центр
- •Системное программное обеспечение - фаи-Центр
- •Основы сетевых технологий
- •17. Какая функции реализуются при обработке пакетов в маршрутизаторе?
- •31. Какие из устройств относятся к пассивному сетевому оборудованию? Хаб (концентратор)
- •Методы и средства защиты компьютерной информации
19. Чем интерфейс отличается от класса в языке c#?
Интерфейс - это частный случай класса. Интерфейс представляет собой полностью абстрактный класс, все методы которого абстрактны. От абстрактного класса интерфейс отличается некоторыми деталями в синтаксисе и поведении. Синтаксическое отличие состоит в том, что методы интерфейса объявляются без указания модификатора доступа. Отличие в поведении заключается в более жестких требованиях к потомкам. Класс, наследующий интерфейс, обязан полностью реализовать все методы интерфейса. В этом - отличие от класса, наследующего абстрактный класс, где потомок может реализовать лишь некоторые методы родительского абстрактного класса, оставаясь абстрактным классом.
Интерфейс объявляется с ключевым словом interface и является почти такой же структурой языка, как и класс, за несколькими исключениями.
В отличие от класса интерфейс не может содержать полей. Интерфейс может содержать все остальные конструкции языка, которые могут содержаться в классе. Такие, как свойства, события и методы. Стоит отметить, что интерфейс не может содержать определений методов, свойств или событий. В терминах C++ интерфейс представляет собой абстрактный класс. Все методы интерфейса должны быть реализованы в классах, наследующих данный интерфейс.
20. Что означает ключевое слово try в языке c#?
Инструкция try-catch состоит из блока try, за которым следует одно или несколько предложений catch, в которых определяются обработчики для различных исключений. При возникновении исключения среда CLR ищет оператор catch, который обрабатывает это исключение. Если выполняющийся в данный момент метод не содержит такого блока catch, то среда CLR рассматривает метод, который вызвал текущий метод, и т. д. по стеку вызовов. Если блок catch не найден, то среда CLR отображает пользователю сообщение о необработанном исключении и останавливает выполнение программы.
Блок try содержит защищаемый код, в котором могут происходить исключения. Этот блок выполняется до момента возникновения исключения или до своего успешного завершения.
21. Возможен ли в языке c# доступ в методе производного класса к унаследованным из базового класса полям?
Из производного класса можно получить доступ к открытым, защищенным, внутренним и защищенным внутренним членам базового класса. Хотя производный класс и наследует закрытые члены базового класса, он не может получить доступ к этим членам. Однако все эти закрытые члены все же присутствуют в производном классе и могут выполнять ту же работу, что и в самом базовом классе. Например, предположим, что защищенный метод базового класса имеет доступ к закрытому полю. Это поле должно присутствовать в производном классе для надлежащей работы унаследованного метода базового класса.
22. Какой тип объекта ошибки может передаваться оператору throw в языке C#?
Исключение.
//Любые типы исключения, наследуемые от класса System.Exception
23. Что произойдёт, если не будет найден обработчик для сгенерированного программой исключения?
Произойдет подъем по стеку вызовов, и поиск обработчиков в методе, вызвавшем метод, который выкинул исключение. Если и в нём нет, тогда поиск будет подниматься всё выше и выше, пока не дойдёт до процедуры Main(). Если и там нет, то активируется стандартный обработчик, прерывающий работу программы с соответствующим сообщением.
24. Можно ли использовать указатели в программах на языке C#?
Да, на участке с небезопасным кодом.
25. В каком случае через ссылку на объект класса С# доступен для вызова метод ToString?
В любом, так как ссылка на объект класса является переменной, которая привязывается к объекту.
То есть
Class s = new Class (); String v = s.ToString();
Здесь в переменную s записывается ссылка на объект класса Class. А в строку v пишется результат вызова метода ToString для данной переменной (ссылки на объект).
26. Если формальный аргумент метода объявлен как экземпляр класса X, то какого типа в языке C# может быть фактический аргумент при вызове метода?
Если формальный аргумент объявлен с типом T, то выражение, задающее фактический аргумент, должно быть согласовано по типу с типом T: допускает преобразование к типу T, совпадает c типом T или является его потомком (соответствие по типу).
То есть, в данном случае фактический аргумент тоже должен быть типа X.
27. Можно ли передать доступ к некоторой структуре в вызываемый метод по ссылке?
Да. (Вроде
нужно использовать ключевое слово thisref)
//знакомый кодер, во всяком случае, сказал, что это так.
28. Какие данные не относятся к пользовательским типам языка C# (то есть, к типам, определяемым программистами)?
Встроенные (базовые типы), не относящиеся к пользовательским:
byte
sbyte
int
uint
short
ushort
long
ulong
float
double
char
bool
object
string
decimal
29. Если присваивание переменных x = y допустимо, то допустимо ли обратное присваивание в языке C#?
Зависит от типов операндов.
Для типов-значений нужен общий тип, а для ссылочных нужно соблюдение наследования. мы можем с более высокого уровня присвоить ссылку типа более низкого уровня иерархии, если первый родитель второго, но наоборот -- нет