Check out example codes for "c# inheritance constructor". It will help you in understanding the concepts better.

Code Example 1

// a Pseudo-example using interfaces. <--- Worked great for me!

public interface IPrinter
{
   void Send();
   string Name { get; }
}

public class PrinterType1 : IPrinter
{
  public void Send() { /* send logic here */ }
  public string Name { get { return "PrinterType1"; } }
}

public class PrinterType2 : IPrinter
{
  public void Send() { /* send logic here */ }
  public string Name { get { return "Printertype2"; } }

  public string IP { get { return "10.1.1.1"; } }
}


// ...
// then to use it
var printers = new List<IPrinter>();

printers.Add(new PrinterType1());
printers.Add(new PrinterType2());

foreach(var p in printers)
{
  p.Send();

  var p2 = p as PrinterType2;

  if(p2 != null) // it's a PrinterType2... cast succeeded
    Console.WriteLine(p2.IP);
}

Code Example 2

// C# program to illustrate the 
// concept of inheritance in the 
// constructor when the derived 
// class contains a constructor 
using System; 
  
// Class Tank to give the 
// dimension of the tank 
class Tank { 
  
    double t_radius; 
    double t_height; 
  
    // Properties for Radius and Height 
    public double Radius 
    { 
        get {  
               return t_radius;  
            } 
  
        set { 
               t_radius = value < 0 ? -value : value; 
            } 
    } 
  
    public double Height 
    { 
        get {  
               return t_height;  
            } 
  
        set {  
              t_height = value < 0 ? -value : value;  
            } 
    } 
  
    // Display the dimension of tanks 
    public void DisplayDimension() 
    { 
        Console.WriteLine("The radius of tank is :" + Radius  
                 + " and the height of tank is :" + Height); 
    } 
} 
  
// A derived class AreaOfTank  
// inheriting Tank Class 
class AreaOfTank : Tank { 
  
    string Color; 
  
    // Constructor 
    public AreaOfTank(string c, double r, double h) 
    { 
  
        // from base class 
        Radius = r; 
        Height = h; 
  
        // from derived class 
        Color = c; 
    } 
  
    // Return area of tank 
    public double Area() 
    { 
        return 2 * 3.14 * Radius * Height; 
    } 
  
    // Display the color of tank 
    public void DisplayColor() 
    { 
        Console.WriteLine("The Color of tank is " 
                                        + Color); 
    } 
} 
  
// Driver Class 
class GFG { 
  
    // Main Method 
    static void Main() 
    { 
  
        // Create and initialize the 
        // object of AreaOfTank 
        AreaOfTank t1 = new AreaOfTank("Green", 6.0, 12.0); 
        t1.DisplayColor(); 
        t1.DisplayDimension(); 
        Console.WriteLine("Area is " + t1.Area()); 
    } 
}

Learn ReactJs, React Native from akashmittal.com