Приведение к типу интерфейса - C#

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

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

Ребят, помогите найти ответ на следующий вопрос: что выведет на экран следующий метод и почему?
     interface IMe
    {
        void Meth();
    }
    class A:IMe
    {
        public void Meth()
        {
            Console.WriteLine("Meth в классе A");
        }
    }
    class B : A, IMe
    {
        public void Meth()
        {
            Console.WriteLine("Meth в классе B");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            A obj = new B();
            obj.Meth();
            ((IMe)obj).Meth(); //Что выведет этот код и почему?
        }
    }

Решение задачи: «Приведение к типу интерфейса»

textual
Листинг программы
class A
    {
        public virtual void Meth()
        {
            Console.WriteLine("Meth в классе A");
        }
    }
    class B : A
    {
        public new void Meth() //замени на оверрайд
        {
            Console.WriteLine("Meth в классе B");
        }
    }
//Тестить так же
A obj = new B();
obj.Meth(); //в каких случаях что?

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


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

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

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