Чтение онлайн

ЖАНРЫ

Язык программирования C#9 и платформа .NET5
Шрифт:

Тестирование модифицированного класса Person

Использование статических членов класса System.Object

Резюме

Глава 7

Ода ошибкам, дефектам и исключениям

Роль обработки исключений .NET

Строительные блоки обработки исключений в .NET

Базовый класс System.Exception

Простейший пример

Генерация общего исключения

Перехват исключений

Выражение throw (нововведение в версии 7.0)

Конфигурирование состояния исключения

Свойство TargetSite

Свойство StackTrace

Свойство HelpLink

Свойство Data

Исключения уровня системы (System.SystemException)

Исключения уровня приложения (Systern.ApplicationException)

Построение специальных исключений, способ первый

Построение специальных исключений, способ второй

Построение специальных исключений, способ третий

Обработка множества исключений

Общие операторы catch

Повторная генерация исключений

Внутренние исключения

Блок finally

Фильтры исключений

Отладка необработанных исключений с использованием Visual Studio

Резюме

Глава 8

Понятие интерфейсных типов

Сравнение интерфейсных типов и абстрактных базовых классов

Определение специальных интерфейсов

Реализация интерфейса

Обращение к членам интерфейса на уровне объектов

Получение ссылок на интерфейсы: ключевое слово as

Получение ссылок на интерфейсы: ключевое слово is (обновление в версии 7.0)

Стандартные реализации (нововведение в версии 8.0)

Статические конструкторы и члены (нововведение в версии 8.0)

Использование интерфейсов в качестве параметров

Использование интерфейсов

в качестве возвращаемых значений

Массивы интерфейсных типов

Автоматическая реализация интерфейсов

Явная реализация интерфейсов

Проектирование иерархий интерфейсов

Иерархии интерфейсов со стандартными реализациями (нововведение в версии 8.0)

Множественное наследование с помощью интерфейсных типов

Интерфейсы IEnumerable и IEnumerator

Построение итераторных методов с использованием ключевого слова yield

Защитные конструкции с использованием локальных функций (нововведение в версии 7.0)

Построение именованного итератора

Интерфейс ICloneable

Более сложный пример клонирования

Интерфейс IComparable

Указание множества порядков сортировки с помощью IComparer

Специальные свойства и специальные типы сортировки

Резюме

Глава 9

Классы, объекты и ссылки

Базовые сведения о времени жизни объектов

Код CIL для ключевого слова new

Установка объектных ссылок в null

Выяснение, нужен ли объект

Понятие поколений объектов

Эфемерные поколения и сегменты

Типы сборки мусора

Фоновая сборка мусора

Тип System.GC

Принудительный запуск сборщика мусора

Построение финализируемых объектов

Переопределение метода System.Object.Finalize

Подробности процесса финализации

Построение освобождаемых объектов

Повторное использование ключевого слова using в C#

Объявления using (нововведение в версии 8.0)

Поделиться с друзьями: