Встречается на собеседованиях • сегодня

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

Виртуальные методы в C# позволяют реализовать полиморфизм — возможность переопределения метода в производных классах. Ключевое слово virtual указывает, что метод может быть переопределен в наследниках, а override — что он переопределяет базовый виртуальный метод.

Пример:

csharp
class Animal {
    public virtual void MakeSound() {
        Console.WriteLine("Some sound");
    }
}

class Dog : Animal {
    public override void MakeSound() {
        Console.WriteLine("Bark");
    }
}

Animal myDog = new Dog();
myDog.MakeSound(); // Выведет "Bark"

Особенности:

  • Виртуальные методы поддерживают динамическую диспетчеризацию (вызов определяется во время выполнения)
  • Можно запретить дальнейшее переопределение с помощью sealed override
  • Абстрактные методы (abstract) неявно виртуальные
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы