Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Dúvida ao declarar String em uma classe

Referente ao tópico - 08 Construindo com informações (C# Orientado a objetos)

No exercício proposto para

Você faz parte do desenvolvimento do Bytebank e em uma reunião, a equipe chegou à conclusão de que seria importante criar um método para construir um objeto de ContaCorrente que recebesse todas as informações no momento em que fosse criado.

Então o desafio é gerar um construtor personalizado para a classe ContaCorrente, que deve receber todos os campos necessários para preencher o objeto. Vamos lá?

Já sabemos como criar um construtor que recebe parâmetros. Agora, basta criar mais um que receba todas as informações necessárias para uma conta corrente:

public ContaCorrente(Cliente titular,string nome_agencia,int numero_agencia,string conta) { Titular = titular; Nome_Agencia = nome_agencia; Numero_agencia = numero_agencia; Conta=conta; }


Vou mostrar a minha resolução:

(Na classe Cliente) public class Cliente { public string Nome { get; set; } public string Cpf { get; set; } public string Profissao { get; set; } }

(Na classe ContaCorrente)
public ContaCorrente(Cliente titular, string nome_agencia, int numero_agencia, string conta)
    {
        Titular = titular;
        Nome_agencia = nome_agencia;
        Numero_agencia = numero_agencia;
        Conta = conta;
    }

    (Na parte do Program.cs)

Cliente cliente6 = new Cliente(); cliente6.Nome = "Silvio Brito"; cliente6.Cpf = "707070"; cliente6.Profissao = "Analista";

ContaCorrente conta6 = new ContaCorrente(conta6.Titular.Nome,"Agência Central", 321, "123456"); conta6.Titular = cliente6;

Console.WriteLine("Titular: " + conta6.Titular.Nome); Console.WriteLine("Nome da Agência: " + conta6.Nome_agencia); Console.WriteLine("Número da Agência: " + conta6.Numero_agencia); Console.WriteLine("Conta: " + conta6.Conta);

Console.ReadKey();

Dúvida: Na parte (conta6.Titular.Nome) que está destacado abaixo, está dando erro, não sei se fiz da forma correta porque conforme proposto no exercício, o primeiro ítem era o único que era vinculado a classe Cliente, os demais ítens funcionaram mas o nome do titular está dando erro, poderia me ajudar?

ContaCorrente conta6 = new ContaCorrente(conta6.Titular.Nome,"Agência Central", 321, "123456");

2 respostas
solução!

Olá Rafael.

O construtor da classe ContaCorrente está esperado um atributo do tipo Titular. No seu código, você tentou um conta6.Titular.Nome mas você ainda está criando a conta6, e mesmo se tentar cliente6.Nome, também dará erro. Experimente criar:

    ContaCorrente conta6 = new ContaCorrente(cliente6, "Agência Central", 321, "123456");

Muito obrigado Walter.