предположим, у нас есть структура этого класса:
public class BaseClass
{
public BaseClass()
{
Console.WriteLine("Base class constructor has been called.");
}
}
public class DerivedClass : BaseClass
{
public DerivedClass()
{
Console.WriteLine("Derived class constructor has been called.");
}
}
, поэтому мой вопрос прост: почему C # позволяет мне создавать экземпляр базового класса, используя конструктор производного класса?для объяснения: BaseClass instance = new DerivedClass ();
Я также хотел бы знать, каков эффект от этого или какие преимущества это даст?Я знаю, что если я выполню этот код, сначала вызывается конструктор базового класса, а затем производный конструктор, потому что это соответствует нормальному поведению наследования классов.спасибо.