O desafio tem duas partes:
1 - Modelar uma classe Conta, que tenha como atributos uma classe Titular, além de informações da conta, como agência, número da conta, saldo e limite, bem como um método que devolva as informações da conta de forma detalhada. 2 - Instanciar um objeto do tipo Conta e um do tipo Titular e mostrar as informações de Titular, a partir da Conta.
Quando eu tentei rodar o que eu tinha construído, o Visual Studio deu alerta de erro. Mesmo olhando a resposta do instrutor, eu ainda não sei o que está errado com meu código (e não entendi como ele chegou na resposta da segunda parte).
Eu separei cada classe em um documento próprio:
class Titular
{
public string Nome { get; set; }
public int CPF { get; set; }
public string Endereco { get; set; }
public Titular(string nome, int cpf, string endereco)
{
Nome = nome;
CPF = cpf;
Endereco = endereco;
}
}
class ContaBancaria
{
public int NumeroIndicador { get; set; }
public int Agencia { get; set; }
public Titular Titular { get; set; }
public double Saldo { get; set; }
public double Limite { get; set; }
public string Informacoes =>
$"Conta nº {this.NumeroIndicador} \nAgência: {this.Agencia} \nTitular: {this.Titular.Nome} \nSaldo: {this.Saldo}";
}
Titular titular1 = new Titular();
titular1.Nome = "João da Silva";
titular1.CPF = 1234567898;
titular1.Endereco = "Rua dos Bobos, n.0";
ContaBancaria conta1 = new ContaBancaria();
conta1.NumeroIndicador = 1;
conta1.Agencia = 1;
conta1.Titular = titular1;
conta1.Saldo = 2565.37;
conta1.Limite = 5000;
conta1.Senha = "123";
Console.WriteLine(conta1.Informacoes);
A resposta do instrutor: Parte 1:
class Titular
{
public string Nome {get; set;}
public string Cpf {get; set;}
public string Endereco {get; set;}
}
class Conta
{
public Titular Titular {get; set;}
public int Agencia {get; set;}
public int NumeroDaConta {get; set;}
public double Saldo {get; set;}
public double Limite {get; set;}
public string Informacoes => $"Conta nº {this.NumeroDaConta}, Agência {this.Agencia}, Titular: {this.Titular.Nome} - Saldo: {this.Saldo}";
}
Resposta da parte 2:
Titular t = new();
Conta c = new();
t.Nome = "George Harrison";
t.Cpf = "000.000.000-00";
t.Endereco = "Rua dos Besouros - Liverpool";
c.Titular = t;
c.Agencia = 1;
c.NumeroDaConta = 2234;
c.Saldo = 10000000.0;
c.Limite = 100000.0;
Console.WriteLine("Informações do Titular: ");
Console.WriteLine($"Nome: {c.Titular.Nome}");
Console.WriteLine($"CPF: {c.Titular.Cpf}");
Console.WriteLine($"Endereco: {c.Titular.Endereco}");
Eu estou muito perdido, agradeço se alguém me der uma ajuda!