Virtual Модификатор
виртуальный член в базовом классе
Метод, Свойство, Индексатор
переопределяется
в одном или нескольких производных классах
если не переопределяется
при наличии многоуровневой иерархии виртуальный член не переопределяется в производном классе, то выполняется ближайший его вариант, обнаруживаемый вверх по иерархии.
в каждом производном классе
свой вариант виртуального члена
не static и не abstract
член не может быть объявлен как static или abstract
ссылка на базовый класс
- при ссылке на разные типы объектов выполняются разные варианты виртуального члена
- делается во время выполнения
- при ссылке на разные типы объектов выполняются разные варианты виртуального члена.
- вариант выполняемого виртуального члена выбирается по типу объекта, а не по типу ссылки на этот объект.