
- •1 Основные сведения о C#
- •1.1 Особенности языка
- •1.2 Типы данных
- •1.3 Переменные
- •1.4 Константы (литералы)
- •1.5 Операторы, используемые при построении выражений
- •1.6 Класс Object
- •1.7 Класс Math
- •1.8 Класс Convert
- •1.9 Пространство имен
- •1.10 Типы, допускающие значение null
- •2 Операторы и конструкции С#
- •2.1 Операторы присваивания
- •2.2 Приведение типов
- •2.3 Операторы инкремента и декремента
- •2.4 Операторные скобки {}
- •2.5 Условный оператор if
- •2.6 Логические операторы “И” и “ИЛИ”
- •2.7 Условный оператор ? :
- •2.8 Оператор выбора switch и оператор прерывания break
- •2.9 Оператор цикла for
- •2.10 Оператор цикла while
- •2.11 Оператор цикла do...while
- •2.12 Операторы прерываний break (для циклов) и continue
- •2.13 Оператор new
- •2.14 Массивы
- •2.14.1 Одномерные массивы
- •2.14.2 Многомерные массивы
- •2.14.3 Ступенчатые массивы
- •2.14.4 Работа с массивами как с объектами
- •2.15 Оператор цикла foreach
- •2.16 Строки
- •2.17 Перечисления
- •2.18 Обработка исключений
- •2.18.1 Класс Exception и стандартные исключения
- •2.18.2 Блок try...catch
- •2.18.3 Блок try...finally
- •2.18.4 Блок try...catch...finally
- •2.18.5 Оператор throw
- •3 Классы. Основные понятия
- •3.1 Общая схема
- •3.2 Спецификаторы доступа
- •3.3 Поля
- •3.4 Создание объекта и доступ к его членам
- •3.5 Методы
- •3.6 Перегрузка методов
- •3.7 Конструкторы
- •3.8 Деструкторы
- •3.9 Инициализаторы объектов
- •3.10 Свойства
- •3.11 Индексаторы
- •4 Классы. Расширенное использование
- •4.1 Статические классы и члены классов
- •4.2 Наследование
- •4.2.1 Наследование и конструкторы
- •4.2.2 Переопределение членов класса
- •4.3 Полиморфизм
- •4.3.1 Виртуальные методы
- •4.3.2 Абстрактные классы и члены классов
- •4.3.3 Операторы as и is
- •4.3.4 Модификатор sealed
- •5 Интерфейсы
- •6 Работа с файлами
- •6.1 Класс File
- •6.2 Работа с файлами как с потоками
- •6.2.1 Класс FileStream
- •6.2.2 Класс StreamReader
- •6.2.3 Класс StreamWriter
- •6.2.4 Класс BinaryReader
- •6.2.5 Класс BinaryWriter
выводе. Каждая Escape-последовательность начинается с символа “\”, после которого указывается тип последовательности в виде некоторого символа. Например, если строка задана как
string s = "Это строка\nиз двух строк";
то при выводе данной строки она будет разделена на две: "Это строка" и "из двух строк". Некоторые Escape-последовательности приведены в таблице 2.4.
Таблица 2.4 – Список Escape-последовательностей
Последовательность |
Описание |
\' |
Вставка одиночной кавычки в текст строки |
\" |
Вставка двойной кавычки в текст строки |
\\ |
Вставка обратной косой черты в текст строки |
\n |
Переход на новую строку |
\r |
Возврат каретки |
\t |
Вставка символа горизонтальной табуляции |
Использование символа “\” для обозначения Escape-последовательности может привести к неудобствам и ошибкам, например, если имя файла задано в строке следующим образом
string s = "C:\new.txt";
то часть строки “\n” будет интерпретирована как переход на новую строку, и файл найден не будет.
Для отказа от использования в строке Escape-последовательностей, перед строкой указывается символ “@”, т.е. предыдущий пример может быть записан одним из двух способов:
string s = "C:\\new.txt"; или string s = @"C:\new.txt";
2.17 Перечисления
Перечисление представляет собой набор имен, определяющих все возможные значения которые могут быть назначены переменной.
Использование перечислений повышает читаемость кода программы и снижает вероятность задания переменной недопустимого значения.
Формальное описание перечисления имеет вид:
enum <идентификатор перечисления>[: <тип>]
{
<идентификатор элемента 1>[=<значение 1>] [,<идентификатор элемента 2>[=<значение 2>] ...]
}
37