День сто тридцать третий. #ВопросыНаСобеседовании

Самые часто задаваемые вопросы на собеседовании по C#

17. Что такое виртуальный метод в C#?

Виртуальный метод - это метод, который можно переопределить в производных классах. Виртуальный метод имеет реализацию в базовом классе. Он используется, когда базовая функциональность метода одинакова, но иногда требуется больше функциональности в производном классе. В базовом классе создается виртуальный метод, используя ключевое слово virtual, который можно переопределить в производном классе с помощью ключевого слова override.

- Производному классу необязательно переопределять этот метод.

- Когда вызывается виртуальный метод, тип объекта во время выполнения проверяется для переопределяющего члена. Вызывается переопределяющий член в наиболее производном классе. То есть может быть вызван и исходный член, если ни один производный класс не переопределил его.

- По умолчанию методы не виртуальные. Нельзя переопределить не виртуальный метод.

- Нельзя использовать виртуальный модификатор с модификаторами static, abstract, private или override.



Источники: https://www.c-sharpcorner.com