Назад к вопросам
Junior
295
Что такое виртуальный метод в C#?
Ответ от нейросети
sobes.tech AI
Виртуальный метод в C# — это метод, объявленный с ключевым словом virtual в базовом классе, который может быть переопределён в производных классах с помощью ключевого слова override. Это позволяет реализовать полиморфизм, когда вызов метода зависит от реального типа объекта во время выполнения, а не от типа переменной.
Пример:
class Animal
{
public virtual void Speak()
{
Console.WriteLine("Животное издаёт звук");
}
}
class Dog : Animal
{
public override void Speak()
{
Console.WriteLine("Гав-гав");
}
}
Animal a = new Dog();
a.Speak(); // Выведет "Гав-гав" благодаря виртуальному методу
Без virtual и override вызов метода был бы статическим и не учитывал бы тип объекта во время выполнения.