7. Какая операция используется, если понадобится вызвать из потомка метод предка?

+895 голосов
3.2m просмотров

7. Какая операция используется, если понадобится вызвать из потомка метод предка?


Информатика | 3.2m просмотров
Дано ответов: 2
+103 голосов

class [название наследуемого класса]: [родительский класс]

{

   public void [название функции] ()

   {

       // тело функции

   }

}

(40 баллов)
+55 голосов

Ответ:

для доступа к реализации метода родительского класса в классе-наследнике используется кейворд base.

Например

class SomeClass

{

   public virtual void DoSomething()

   {

       Console.WriteLine("base realization action");

   }

}

class Derivative : SomeClass

{

   public override void DoSomthing()

   {

       Console.WriteLine("some overrided action");

       base.DoSomething(); //Вызываем реализацию этого метода у базового класса

   }

}

class Test

{

   static void Main(string[] Args)

   {

       Derivative e = new Derivative();

       e.DoSomething();

   }

}

Консольный вывод:

some overrided action

base realization action

То бишь, в этом примере при вызове переопределённого метода на выходе мы получили не только то, что и определили в производном классе, но и результат, возвращённый базовой реализацией вызванного метода.

(1.6k баллов)