Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Composição de classes

Sou novato no mundo da programação e mesmo após ter assistido a todos os cursos de C# (exceto testes que será meu proximo), não entendi direito o conceito de composição de classes, o que seria isso? podem me dar um exemplo de como fazer a composição... É a utilização de interface onde os só colocamos metodos comuns a todas as classes e nao colocamos os que são exclusivos de cada classe? Obrigado.

3 respostas
solução

Olá, Rodrigo.

Composição de classes é exatamente o que o nome sugere: Composição.

Já parou pra pensar como se compõe algo? Ou quando algo é composto?

Composição de classes é um conceito e a utilização de Interfaces para composição é uma das técnicas usadas para isso. Outra forma de composição muito utilizada que poucos conhecem é o relacionamento entre classes, onde uma classe possui uma referência (atributo) para outra classe.

Ficou mais claro?

Acho que entendi sim, obrigado

Para resolver o problema na classe ContaEstudante, coloquei um membro privado ContaComum, esta funcionando, mas esta correto esta composição ?

class ContaEstudante 
{
    private readonly ContaComum _contaComum;      

    public int Milhas { get; private set; }

    public ContaEstudante()
    {
        _contaComum = new ContaComum();
    }

    public void Deposita(double valor)
    {
        _contaComum.Deposita(valor);
        this.Milhas += (int)valor;
    }

    public double Saldo => _contaComum.Saldo;
}