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

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

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

Ребят, помогите найти ответ на следующий вопрос: что выведет на экран следующий метод и почему?
Листинг программы
  1. interface IMe
  2. {
  3. void Meth();
  4. }
  5. class A:IMe
  6. {
  7. public void Meth()
  8. {
  9. Console.WriteLine("Meth в классе A");
  10. }
  11. }
  12. class B : A, IMe
  13. {
  14. public void Meth()
  15. {
  16. Console.WriteLine("Meth в классе B");
  17. }
  18. }
  19. class Program
  20. {
  21. static void Main(string[] args)
  22. {
  23. A obj = new B();
  24. obj.Meth();
  25. ((IMe)obj).Meth(); //Что выведет этот код и почему?
  26. }
  27. }

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

textual
Листинг программы
  1. class A
  2.     {
  3.         public virtual void Meth()
  4.         {
  5.             Console.WriteLine("Meth в классе A");
  6.         }
  7.     }
  8.     class B : A
  9.     {
  10.         public new void Meth() //замени на оверрайд
  11.         {
  12.             Console.WriteLine("Meth в классе B");
  13.         }
  14.     }
  15. //Тестить так же
  16. A obj = new B();
  17. obj.Meth(); //в каких случаях что?

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


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

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

7   голосов , оценка 4.286 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы