Получение имени класса-наследника - C#

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

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

Есть базовый класс, в нём виртуальный метод принимающий некий параметр, у класса много наследников, ни об одном из них нет никаких данных, знаю лишь что они все перекрывают виртуальный метод, и вызывают его
base.имя_метода(параметр)
, вот в этом виртуально методе мне нужно узнать имя класса который его вызвал.

Решение задачи: «Получение имени класса-наследника»

textual
Листинг программы
class A
    {
        public virtual void MyMethod() {
            Console.WriteLine(this.GetType().Name);
        }
    }
 
    class B : A
    {
        public override void MyMethod() {
            base.MyMethod();
        }
    }
 
    class C : A
    {
        public override void MyMethod() {
            base.MyMethod();
        }
    }
 
    class Program
    {
        public static void Main() {
            A first = new B();
            A second = new C();
            first.MyMethod();
            second.MyMethod();
 
            Console.ReadKey();
        }
    }

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


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

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

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