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

É possível instanciar uma classe dentro de um construtor?

Bom dia Professor, tenho uma dúvida

public Empresa Empresa { get; set; }
public Cliente (string nome, int idade)
    {
      this.Empresa  =  new Empresa();
    }

No código acima mostra a classe Empresa sendo atribuída sua referencia propriedade (variável) Empresa. Tudo isso esta acontecendo dentro do construtor da classe Cliente. A dúvida é, posso ao usar o construtor de uma classe já instanciando uma outra classe no atributo? Se sim, existe uma boa pratica para isso? se sim, tem alguma vantagem? Abraços

2 respostas

Bom dia, Bruno. Tudo bom?

Este caso é bastante comum em muitas situações. Na maioria delas, fazemos isto quando temos classes auxiliares.

Em seu exemplo, a classe Empresa soa como uma entidade completa e independente do Cliente, então talvez não seja um bom caso de aplicação (vários clientes compartilham da mesma empresa).

Mas, teremos casos como:

public class ConexaoComServidor
{
    public Configuracao Configuracao { get; private set; }
    public ConexaoComServidor()
    {
        Configuracao = new Configuracao();
    }
}

Que poderemos usar deste modo:

ConexaoComServidor conexao = new ConexaoComServidor();
conexao.Configuracao.TempoLimiteDeEspera = 2000;
solução!

Show Professor, era exatamente essa minha dúvida, muito obrigado

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software