C#  -   Perguntas e Respostas  -  Resposta 3


 Resposta da Pergunta 3.
Pergunta 4 Resposta:
using System;
					
public class Program
{
    public static void Main()
    {
       ClasseDerivada classeDerivada1 = new ClasseDerivada();
       ClasseDerivada classeDerivada2 = new ClasseDerivada("Parâmetro");
    }
}
class ClasseBase
{
   public ClasseBase()
   {
       Console.WriteLine("Construtor Padrão da classe Base");
   }

   public ClasseBase(string value)
   {
      Console.WriteLine("Construtor Parametrizado (1 parametro) da Classe Base");
   }
}	

class ClasseDerivada : ClasseBase
{
    public ClasseDerivada()
    {
       Console.WriteLine("Construtor Padrão da classe Derivada"); 
    }
 
    public ClasseDerivada(string value) 
    {
       Console.WriteLine("Construtor Parametrizado (1 parametro) da classe Derivada");
    }
}

 

Executando o código temos que :
Uma instância da classe ClasseDerivada() será criada e ocorre o seguinte:

1- o construtor padrão da classe base será invocado;
2- A seguir o construtor padrão da classe derivada será invocado;
 

Uma nova instância da classe ClasseDerivada(param) será criada e ocorre o seguinte:

3- o construtor padrão da classe base será invocado novamente;
4- A seguir o construtor parametrizado da classe derivada será invocado;
 

O resultado da execução do código ao lado é o seguinte :

1-Construtor Padrão da classe Base
2-Construtor Padrão da classe Derivada
3-Construtor Padrão da classe Base
4-Construtor Parametrizado (1 parametro) da classe Derivada

 

Veja o resultado da compilação neste link : Compilação C#

Notas:  A palavra-chave base é usada para acessar membros de classe base de dentro de uma classe derivada:

Acertou a resposta ?

Então responda rápido: Como faço para que o código chame o construtor parametrizado da classe base ?

a) Não é possível chamar o construtor parametrizado da classe base b)   Usar a palavra chave base no construtor com parâmetros da classe derivada :

        public ClasseDerivada(string value) : base(value)      

c)   Usar a palavra chave base no construtor com parâmetros da classe base :

        public ClasseBase(string value) : base(value)    
 

(Disse Jesus) :  Passará o céu e a terra, mas as minhas palavras não hão de passar. Lucas 21:33

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Quer aprender a criar aplicações Web Dinâmicas usando a ASP .NET MVC 5 ?

 

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

 

Referências:


José Carlos Macoratti