2
respostas

INSTANCIAR OBJETO

Boa tarde pessoal.

Tenho uma dúvida que me acompanha, em compreender , quando os objetos são instanciados em parametros ou métodos como o exemplo abaixo, sem que seja informado o tipo dele.

new BigDecimal(2);

Ao invés de ser escrito BigDecimal bc = new BigDecimal(2);

E também ja vi classes onde escreveram new BigDecimal(2).nomeDometodo();

Agradeço desde já.

2 respostas

Olá, Daniel!

Quando você instância um objeto, ele já sabe qual é o tipo dele, quais os métodos e propriedades que ele possui. Sendo assim, ele já pode ser utilizado no momento da instância, mas lembre-se, essa abordagem tem que fazer sentido. O que você informa o tipo, é para a váriavel, para ela saber o que ela está recebendo.

Vamos ver alguns exemplos:

// Nesse caso temos a váriavel "veiculo" recebendo um objeto de Carro e logo após, o ligando
var veiculo = new Carro();
veiculo.Ligar();

//Nesse caso temos o Carro sendo criado e já sendo ligado. Nesse caso, por exemplo, não faz muito sentido. Como ele está sendo instânciado e já ligado, não há nada na mémoria guardando ele para que ele continue ligado ou que possa ser manipulado por outra regra, ou seja, ele vai ser descartado.
new Carro().Ligar();

//Nesse caso temos o Carro sendo criado e estamos querendo a propriedade da quilometragem dele. Nesse caso, estamos salvando o valor da quilometragem do carro mas, a instância do carro será descartada da memoria por não ter nada guardando ela.
var quilometragem = new Carro().Quilometragem;

A forma de utilizar o objeto vai de acordo com sua necessidade e o que a regra de negócio da aplicação pede.

Espero que isso lhe ajude.

Abraço!

Rutty, boa tarde.

Muito obrigado, me ajudou sim !!!

Abs !!!!