Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Falso negativo

Boa tarde! Ao responder o questionário (08) do módulo de 3 de C# tive como reposta positiva o seguinte item : "A solução para o código seria remover as atribuições no construtor de ContaCorrente e preencher o construtor da classe base com public ContaCorrente(int numero, int agencia) : base(numero, agencia)." Com a seguinte descrição: "Correta! Deste modo, evitamos a repetição de código e mantemos esta lógica de atribuição centralizada em apenas um lugar: a classe Conta." E como resposta negativa o item a seguir: "Bastaria alterarmos a assinatura do construtor da classe ContaCorrente para public ContaCorrente(int numero, int agencia) : base(numero, agencia) e não haveriam mais erros." Com a seguinte descrição: "Quase lá! Ainda há o erro de atribuição em membros inacessíveis à classe ContaCorrente". A questão é que ambas as opções oferecem a mesma solução e uma é tida como correta e a outra incorreta, quando na verdade as duas estão corretas uma vez que ao chamar o construtor da base(Conta), pela classe derivada ContaCorrente, enviando os parâmetros, não teremos problemas de atribuição em membros inacessíveis.

1 resposta
solução!

Olá Jeferson, como vai?

Realmente as duas questões ficaram semelhantes. Percebo que a principal diferença, seria sobre "remover as atribuições no construtor". Mas, a questão "Bastaria alterarmos a assinatura do construtor da classe ContaCorrente para public ContaCorrente(int numero, int agencia) : base(numero, agencia) e não haveriam mais erros" ficou um pouco aberta sobre isso.

Fizemos a alteração para deixar mais claro essa questão que chamou de "falso negativo". Agradecemos muito seu retorno e sentimos muito pela ambiguidade do exercício.

Abraços e bons estudos!