Llamar al constructor de la clase base desde el constructor de la clase secundaria en C#

Muhammad Maisam Abbas 16 febrero 2024
  1. Llame al constructor predeterminado de la clase base desde el constructor de la clase secundaria en C#
  2. Pasar argumentos al constructor de la clase base desde el constructor de la clase secundaria con la palabra clave base en C#
Llamar al constructor de la clase base desde el constructor de la clase secundaria en C#

Este tutorial discutirá los métodos para llamar al constructor de la clase base desde el constructor de la clase secundaria en C#.

Llame al constructor predeterminado de la clase base desde el constructor de la clase secundaria en C#

En C#, cuando creamos una instancia de la clase secundaria, el compilador invoca automáticamente el constructor predeterminado de la clase base. Este fenómeno se muestra en el siguiente ejemplo de código.

using System;

namespace call_constructor_of_base_class {
  public class baseClass {
    public baseClass() {
      Console.WriteLine("This is the Base Class");
    }
  }
  public class childclass : baseClass {
    public childclass() {
      Console.WriteLine("This is the Child Class");
    }
  }

  class Program {
    static void Main(string[] args) {
      childclass c = new childclass();
    }
  }
}

Producción :

This is the Base Class
This is the Child Class

En el código anterior, baseClass es la clase base, y childclass es la clase secundaria que hereda baseClass. Cuando creamos una instancia de la clase secundaria childclass, el compilador llama automáticamente al constructor predeterminado de la baseClass. El constructor de baseClass se ejecuta antes que el constructor de childclass. Este método no se puede utilizar para pasar argumentos al constructor de la clase base desde el constructor de la clase secundaria.

Pasar argumentos al constructor de la clase base desde el constructor de la clase secundaria con la palabra clave base en C#

Si queremos pasar argumentos al constructor de la clase base desde el constructor de la clase hija, tenemos que usar la palabra clave base en C#. La palabra clave base especifica qué constructor de la clase base debe llamarse cuando se crea una instancia de la clase secundaria. El siguiente ejemplo de código nos muestra cómo podemos pasar argumentos al constructor de la clase base desde el constructor de la clase secundaria con la palabra clave base en C#.

using System;

namespace call_constructor_of_base_class {
  public class baseClass {
    public baseClass() {
      Console.WriteLine("This is the Base Class");
    }
    public baseClass(int x) {
      Console.WriteLine("The Child class passed {0} to the Base Class", x);
    }
  }
  public class childclass : baseClass {
    public childclass(int a) : base(a) {
      Console.WriteLine("This is the Child Class");
    }
  }

  class Program {
    static void Main(string[] args) {
      childclass c = new childclass(10);
    }
  }
}

Producción :

The Child class passed 10 to the Base Class
This is the Child Class

En el código anterior, pasamos 10 al constructor parametrizado de la clase base baseClass desde el constructor de la clase secundaria childclass.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Csharp Class