#330 – Derived Classes Do Not Inherit Constructors
May 23, 2011 Leave a comment
A derived class inherits all of the members of a base class except for its constructors.
You must define a constructor in a derived class unless the base class has defined a default (parameterless) constructor. If you don’t define a constructor in the derived class, the default constructor in the base class is called implicitly.
When you define a constructor in a derived class, you can call a constructor in the base class by using the base keyword.
Here’s an example:
public class Dog { public string Name { get; set; } public int Age { get; set; } public Dog(string name, int age) { Name = name; Age = age; } } public class Terrier : Dog { public string Attitude { get; set; } // Call the Name/Age constructor in the base class public Terrier(string name, int age, string attitude) : base(name, age) { Attitude = attitude; } }