- •Запишите имена функций, предназначенных для ввода/вывода в файл в контексте языка с, поясните их назначение, особенности подключения и использования, приведите примеры.
- •Поясните, что представляет собой такой тип данных, как структура, запишите синтаксис объявления структуры, приведите примеры инициализации и использования.
- •Перечислите основные принципы ооп, дайте определение каждому понятию, приведите примеры возможных вариантов реализации обозначенных принципов.
- •Поясните назначение и особенности использования виртуальных методов, запишите синтаксис их объявления, приведите примеры.
- •Назовите основные компоненты вкладок Standard, Additional, поясните их назначение, приведите примеры использования.
- •Назовите основные компоненты вкладок Win32, System, поясните их назначение, приведите примеры использования.
- •Назовите основные компоненты вкладок Dialogs, Samples, поясните их назначение, приведите примеры использования.
- •Дайте характеристику платформе .Net Framwork, перечислите составляющие платформы и объясните их назначение.
- •Расскажите этапы разработки языка программирования c#, перечислите его достоинства.
- •Назовите виды операторов разветвления языка c#, приведите синтаксис их записи, поясните назначение и укажите, в каких ситуациях какую конструкцию рационально использовать, приведите примеры.
- •Назовите виды операторов цикла языка c#, приведите синтаксис их записи, поясните назначение и укажите, в каких ситуациях какую конструкцию рационально использовать, приведите примеры.
- •Перечислите основные методы класса Math языка c#, поясните назначение, особенности использования, приведите примеры.
- •Перечислите методы, предназначенные для работы с консолью в контексте языка c#. Поясните, каким образом осуществляется форматированный ввод/вывод информации, приведите примеры.
- •Объясните реализацию исключений в языке c#, назовите операторы, которые используются для реализации исключений, приведите примеры.
- •Объясните назначение операторов checked и unchecked, запишите формат их использования, приведите примеры.
- •Перечислите виды массивов в контексте языка с#, запишите синтаксис их объявления, приведите различные способы инициализации и вывода массивов разных видов.
- •Объясните назначение индексаторов, запишите синтаксис индексатора, приведите примеры использования.
- •Перечислите средства языка c#, позволяющие работать со строками, объясните назначение и особенности использования, приведите примеры.
- •Поясните, что представляет собой такой тип данных, как класс, запишите синтаксис объявления класса в контексте языка с#, объясните назначение спецификаторов.
- •Назовите функциональные компоненты, которые могут входить в определение класса в контексте языка c#, поясните их назначение, приведите примеры реализации.
- •Методы, перегрузка методов, методы с переменным количеством аргументов, метод Main.
- •Конструкторы. Деструкторы
- •Вложенные типы, Наследование
Объясните назначение индексаторов, запишите синтаксис индексатора, приведите примеры использования.
Индексаторы позволяют получить доступ к объекту, как будто это массив. Если определить для класса индексатор, это укажет компилятору, что делать если он встретит код, в котором экземпляр класса рассматривается так, как будто это массив.
Индексаторы определяются примерно также как и свойства (с использованием get и set). Основное отличие – что в качестве имени индексатора используется ключевое слово this.
Строка public double this[int i] говорит, что мы хотим рассматривать каждый экземпляр класса (структуры) Vector как одномерный массив с int в качестве индекса и что тип возвращаемого значения double.
Пример идексатора в C#:
public double this[int i]
{
get
{
switch (i)
{
case 0: return x; // break и не надо
case 1: return y;
case 2: return z;
// вызываем исключение
default: throw new IndexOutOfRangeException("Отсуствует эл." + i);
}
}
set
{
switch (i)
{
case 0: x = value; break;
case 1: y = value; break;
case 2: z = value; break;
default: throw new IndexOutOfRangeException("Отсуствует эл." + i);
} } }
Перечислите средства языка c#, позволяющие работать со строками, объясните назначение и особенности использования, приведите примеры.
Клаcc Strings включает множество методов сравнения, поиска и изменения строковых значений. Здесь я приведу список часто необходимых (лично мне) возможностей этого класса: Empty — свойство определяющее пустая ли строка; Compare() — сравнивает две строки; CompareOrdinal() — позволяет сравнивать строки в независимости от региональных настроек; Concat() — объединяет две и более строки в новую строку; Copy() — Копирует исходную строку; Equals() — проверяет, содержат ли две строки одинаковые значения; Format() — форматирует строку, используя строго заданный формат; Intern() — возвращает ссылку на существующий экземпляр строки; Join() — добавляет новую строку в заданное место уже существующей строки; Chars — индексатор символов строки; Length — количество символов в строке; Clone() — возвращает ссылку на существующую строку; CompareTo() — сравнивает одну строку с другой; CopyTo() — копирует заданное число символов строки в массив Unicode символов; EndsWith() — проверяет, заканчивается ли строка определённой последовательностью символов; Equals() — определяет, имеют ли две строки одинаковые значения; Insert() — вставляет новую строку в уже существующую; LastIndexOf() — возвращает индекс последнего вхождения элемента в строку; PadLeft() — выравнивает строку по правому краю, пропуская все проблеы или другие специально заданные символы; PadRight() — выравнивает строку по левому краю, пропуская все проблеы или другие специально заданные символы; Remove() — удаляет заданное число символов из строки; Split() — возвращает подстроку, отделённую от основного массива определённым символом; StartsWith() — определяет, начинается ли строка с определённой последовательности символов; Substring() — возвращает подстроку из общего массива символов; ToCharArray() — копирует символы из строки в массив символов; ToLower() — преобразует символы в строке к нижнему регистру; ToUpper() — преобразует символы в строке к верхнему регистру; Trim() — удаляет все вхождения определённых символов в начале и в конце строки; TrimEnd() — удаляет все вхождения определённых символов в конце строки; TrimStart() — удаляет все вхождения определённых символов в начале строки.