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

Composição de classes

Na tópico de composição de classes colocando um cliente dentro da classe conta, não seria melhor trabalhar com herança. Uma vez que toda conta tem um cliente seja ele pessoa fisica ou juridica?

2 respostas
solução!

Oi Marcelo

Com a composição de classes já estamos automaticamente lidando tipos diferentes de clientes (herança). No curso as classes Conta e Cliente foram declaradas da seguinte forma:

class Conta
{
    public double saldo;
    public int numero;
    public Cliente Titular;
}

class Cliente
{
    public string nome;

    public string cpf;
    // outras informações
}

Se quisermos suportar Pessoas Físicas e Jurídicas, precisamos apenas criar essas classes herdando de Cliente:

class PessoaFisica : Cliente
{
   // implementação
}

class PessoaJuridica : Cliente
{
   // implementação
}

Com isso, podemos criar uma Conta de Pessoa Física com esse código:

Conta c = new Conta();
c.titular = new PessoaFisica();
// usa a conta

O mesmo pode ser feito para a pessoa jurídica:

Conta c = new Conta();
c.titular = new PessoaJuridica();
// usa a conta

acredito que essa seja a forma mais simples de fazer as coisas para ajudar mesmo quem ta começando e isso serve tbm para programadores experientes que fazem isso