Понятие типов С#, допускающих null

    Использование типов значений, допускающих null

    Использование ссылочных типов, допускающих null (нововведение в версии 8.0)

     Включение ссылочных типов, допускающих null

     Ссылочные типы, допускающие null, в действии

     Рекомендации по переносу кода

    Работа с типами, допускающими значение null

     Операция объединения с null

     Операция присваивания с объединением с null (нововведение в версии 8.0)

     null-условная операция

   Понятие кортежей (нововведение и обновление в версии 7.0)

   Начало работы с кортежами

   Использование выведенных имен переменных (обновление в версии C# 7.1)

   Понятие эквивалентности/неэквивалентности кортежей (нововведение в версии 7.3)

   Использование отбрасывания с кортежами

   Использование отбрасывания с кортежами

   Использование выражений switch с сопоставлением с образцом для кортежей (нововведение в версии 8.0)

   Деконструирование кортежей

    Деконструирование кортежей с позиционным сопоставлением с образцом (нововведение в версии 8.0)

   Резюме

Часть III

  Глава 5

   Знакомство с типом класса C#

    Размещение объектов с помощью ключевого слова new

   Понятие конструкторов

    Роль стандартного конструктора

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

     Конструкторы в виде членов, сжатых до выражений (нововведение в версии 7.0)

     Конструкторы с параметрами out (нововведение в версии 7.3)

    Еще раз о стандартном конструкторе

   Роль ключевого слова this

    Построение цепочки вызовов конструкторов с использованием this

    Исследование потока управления конструкторов

    Еще раз о необязательных аргументах

   Понятие ключевого слова static

    Определение статических полей данных

    Определение статических методов

    Определение статических конструкторов

    Определение статических классов

    Импортирование статических членов с применением ключевого слова using языка C#

   Основные принципы объектно-ориентированного программирования

    Роль инкапсуляции

    Роль наследования

    Роль полиморфизма

   Модификаторы доступа C# (обновление в версии 7.2)

    Использование стандартных модификаторов доступа

    Использование модификаторов доступа и вложенных типов

   Первый принцип объектно-ориентированного программирования: службы инкапсуляции C#

    Инкапсуляция с использованием традиционных методов доступа и изменения

    Инкапсуляция с использованием свойств

     Свойства как члены, сжатые до выражений (нововведение в версии 7.0)

    Использование свойств внутри определения класса

    Свойства, допускающие только чтение

    Свойства, допускающие только запись

    Смешивание закрытых и открытых методов get/set в свойствах

    Еще раз о ключевом слове static: определение статических свойств

    Сопоставление с образцом и шаблоны свойств (нововведение в версии 8.0)

   Понятие автоматических свойств

    Взаимодействие с автоматическими свойствами