Chame o construtor da classe base do construtor da classe filha em C#

  1. Chame o construtor padrão da classe base do construtor da classe filha em C
  2. Passe argumentos para o construtor da classe base a partir do construtor da classe filha com a palavra-chave base em C

Este tutorial discutirá métodos para chamar o construtor da classe base a partir do construtor da classe filha em C#.

Chame o construtor padrão da classe base do construtor da classe filha em C

Em C#, quando criamos uma instância da classe filha, o construtor padrão da classe base é automaticamente invocado pelo compilador. Este fenômeno é mostrado no exemplo de código abaixo.

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();
        }
    }
}

Resultado:

This is the Base Class
This is the Child Class

No código acima, a baseClass é a classe base e a childclass é a classe filha que herda baseClass. Quando criamos uma instância da classe filha childclass, o construtor padrão da baseClass é automaticamente chamado pelo compilador. O construtor de baseClass é executado antes do construtor de childclass. Este método não pode ser usado para passar argumentos para o construtor da classe base a partir do construtor da classe filha.

Passe argumentos para o construtor da classe base a partir do construtor da classe filha com a palavra-chave base em C

Se quisermos passar argumentos para o construtor da classe base a partir do construtor da classe filha, temos que usar a palavra-chave base em C#. A palavra-chave base especifica qual construtor da classe base deve ser chamado quando uma instância da classe filha é criada. O exemplo de código a seguir nos mostra como podemos passar argumentos para o construtor da classe base do construtor da classe filha com a palavra-chave base em 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);
        }
    }
}

Resultado:

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

No código acima, passamos 10 para o construtor parametrizado da classe base baseClass do construtor da classe filha childclass.

Artigo relacionado - Csharp Class

  • Diferença entre Struct e Class em C#