C# – Making all derived classes call the base class constructor

You can use the following syntax to call the base class constructor from the classes that derive from it:

public DerivedClass() : base() {
    // Do additional work here otherwise you can leave it empty
}

This will call the base constructor first, then it will perform any additional statements, if any, in this derived constructor.

Note that if the base constructor takes arguments you can do this:

public DerivedClass(int parameter1, string parameter2) 
    : base(parameter1, parameter2) {
    // DerivedClass parameter types have to match base class types
    // Do additional work here otherwise you can leave it empty
}

You can find more information about constructors in the following page:

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/using-constructors

In a derived class, if a base-class constructor is not called explicitly by using the base keyword, the default constructor, if there is one, is called implicitly.

Leave a Comment