1
resposta

duvida desafio 1

fiquei bem na dúvida quanto a este primeiro desafio, pois no caso. eu estou usando uma instância de titular, não necessáriamente eu preciso de uma lista. Não vejo o caso aqui. Mas, como só se pede para instanciar Titular titular, ainda assim, se for para a representação de uma classe tive de criar a classe titular e deixar ela vaizia, mas ainda posso a instanciar e a chamar de dentro de Conta. Isso me lembra de instanciação de objeto por referência que usamos em java.

class Titular
{ 
}
class Conta
{
    public Titular titular;

    public int Agencia { get; set; }
    public long NumeroDaConta { get; set; }
    public double Saldo { get; set; }
    public double Limite { get; set; }

    public void DadosCliente() 
    {
        Console.WriteLine("Dados do cliente:");
        Console.WriteLine($"Titular.........: {titular}");
        Console.WriteLine($"Agência.........: {Agencia}");
        Console.WriteLine($"Número da conta.: {NumeroDaConta}");
        Console.WriteLine($"Saldo...........: {Saldo}");
        Console.WriteLine($"Limite..........: {Limite}");

    }
}

Conta conta = new Conta();

conta.Agencia = 1234;
conta.NumeroDaConta = 123456;
conta.Saldo = 1000;
conta.Limite = 500;

Titular titular = new Titular();

conta.titular = titular;

conta.DadosCliente();
1 resposta

Olá, Paulo. Tudo bem?

A ideia aqui é praticar o conceito de composição, onde uma classe (Conta) tem um objeto de outra classe (Titular) como um de seus atributos.

No seu código, você já está instanciando um objeto Titular e associando-o a uma instância de Conta, o que está correto. No entanto, a classe Titular está vazia, então quando você imprime titular no método DadosCliente, ele não mostra informações úteis. Para resolver isso, você pode adicionar alguns atributos à classe Titular, como nome, CPF, ou qualquer outra informação que faça sentido para um titular de conta. Aqui está um exemplo de como você poderia estruturar isso:

class Titular
{
    public string Nome { get; set; }
    public string CPF { get; set; }
}

E então, ao instanciar e associar o Titular à Conta, você pode definir esses atributos:

Titular titular = new Titular();
titular.Nome = "João Silva";
titular.CPF = "123.456.789-00";

conta.titular = titular;

E no método DadosCliente, você pode acessar essas informações:

public void DadosCliente() 
{
    Console.WriteLine("Dados do cliente:");
    Console.WriteLine($"Titular.........: {titular.Nome}");
    Console.WriteLine($"CPF.............: {titular.CPF}");
    Console.WriteLine($"Agência.........: {Agencia}");
    Console.WriteLine($"Número da conta.: {NumeroDaConta}");
    Console.WriteLine($"Saldo...........: {Saldo}");
    Console.WriteLine($"Limite..........: {Limite}");
}

Dessa forma, você estará utilizando a classe Titular de uma maneira que faz sentido para o contexto do seu exercício, além de praticar a composição de objetos em C#.

Parabéns! Continue assim, praticando e evoluindo.

Espero ter ajudado e bons estudos!