Язык программирования C#9 и платформа .NET5
Шрифт:
Второй принцип объектно-ориентированного программирования: детали наследования
Вызов конструкторов базового класса с помощью ключевого слова base
Хранение секретов семейства: ключевое слово protected
Добавление запечатанного класса
Наследование с типами записей (нововведение в версии 9.0)
Реализация модели включения/делегации
Определения вложенных типов
Третий принцип объектно-ориентированного программирования: поддержка полиморфизма в C#
Использование ключевых слов virtual и override
Переопределение виртуальных членов с помощью Visual Studio/Visual Studio Code
Запечатывание виртуальных членов
Абстрактные классы
Полиморфные интерфейсы
Сокрытие членов
Правила приведения для базовых и производных классов
Использование ключевого слова as
Использование ключевого слова is (обновление в версиях 7.0, 9.0)
Использование отбрасывания вместе с ключевым словом is (нововведение в версии 7.0)
Еще раз о сопоставлении с образцом (нововведение в версии 7.0)
Использование отбрасывания вместе с операторами switch (нововведение в версии 7.0)
Главный родительский класс: System.Object
Переопределение метода System.Object.ToString
Переопределение метода System.Object.Equals
Переопределение метода System.Object.GetHashCode
Тестирование модифицированного класса Person
Использование статических членов класса System.Object
Резюме
Глава 7
Ода ошибкам, дефектам и исключениям
Роль обработки исключений .NET
Строительные блоки обработки исключений в .NET
Простейший пример
Генерация общего исключения
Перехват исключений
Выражение throw (нововведение в версии 7.0)
Конфигурирование состояния исключения
Свойство TargetSite
Свойство StackTrace
Свойство HelpLink
Свойство Data
Исключения уровня системы (System.SystemException)
Исключения уровня приложения (Systern.ApplicationException)
Построение специальных исключений, способ первый
Построение специальных исключений, способ второй
Построение специальных исключений, способ третий
Обработка множества исключений
Общие операторы catch
Повторная генерация исключений
Внутренние исключения
Блок finally
Фильтры исключений
Отладка необработанных исключений с использованием Visual Studio
Резюме
Глава 8
Понятие интерфейсных типов
Сравнение интерфейсных типов и абстрактных базовых классов
Определение специальных интерфейсов
Реализация интерфейса
Обращение к членам интерфейса на уровне объектов
Получение ссылок на интерфейсы: ключевое слово as
Получение ссылок на интерфейсы: ключевое слово is (обновление в версии 7.0)
Стандартные реализации (нововведение в версии 8.0)
Статические конструкторы и члены (нововведение в версии 8.0)
Использование интерфейсов в качестве параметров
Использование интерфейсов в качестве возвращаемых значений
Целеполагание
4. Глэрд
Фантастика:
фэнтези
боевая фантастика
рпг
рейтинг книги
Газлайтер. Том 6
6. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
рейтинг книги
Снайпер
3. Жнец
Фантастика:
боевая фантастика
попаданцы
рейтинг книги
Газлайтер. Том 3
3. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
рейтинг книги
Очкарик 2
2. Очкарик
Фантастика:
фэнтези
альтернативная история
рейтинг книги
Путёвка в спецназ
1. Мажор
Фантастика:
боевая фантастика
рейтинг книги
Мечников. Клятва лекаря
2. Жизнь Лекаря с нуля
Фантастика:
альтернативная история
аниме
фэнтези
попаданцы
рейтинг книги
Как я строил магическую империю 11
11. Как я строил магическую империю
Фантастика:
аниме
фэнтези
попаданцы
рейтинг книги
Мусорщик
3. Наемник
Фантастика:
боевая фантастика
космическая фантастика
рейтинг книги