Скажем, у нас есть класс A и класс B. ClassB расширяет класс A. (ClassB: ClassA)
Теперь скажем, что всякий раз, когда я создаю экземпляр класса ClassB, я хотел бы запустить какой-нибудь случайный код и только потом вызвать "base" для доступа к конструктору ClassA.
Как
class ClassA
{
public ClassA()
{
Console.WriteLine("Initialization");
}
}
class ClassB : ClassA
{
public ClassB() //: base()
{
// Using :base() as commented above, I would execute ClassA ctor before // Console.WriteLine as it is below this line...
Console.WriteLine("Before new");
//base() //Calls ClassA constructor using inheritance
//Run some more Codes here...
}
}
На языке программирования, с которым я обычно работаю, я могу это сделать, просто позвонив super()
после Console.WriteLine()
; Но я не могу сделать это на С#. Есть ли другой синтаксис или другой способ сделать это?