Неоднозначность в вызове метода - C#

Узнай цену своей работы

Формулировка задачи:

Есть такой код на C#, и вопрос: почему срабатывает метод Foo с аргументом типа object, а не с int?
class Class
{
public virtual void Foo(int x) { Console.WriteLine(x); }
 
}
class Child : Class
{
public override void Foo(int x) { Console.WriteLine(" override int {0}", x); }
public void Foo(object x) { Console.WriteLine(" obj {0}", x); }
}
class Program
{
 
static void Main(string[] args)
{
Child s = new Child();
s.Foo(3);
Console.ReadKey();
}
}

Решение задачи: «Неоднозначность в вызове метода»

textual
Листинг программы
public override void Foo(int x)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5
Похожие ответы