Oi, Wallace! Tudo bem?
Correta percepção! Quando criamos uma variável de referência para um objeto, estamos apenas criando uma nova maneira de acessar aquele objeto. No exemplo do código estudado, por exemplo, a variável p1
é uma referência para um objeto Produto
. Quando declaramos Produto p2 = p1;
, estamos criando uma nova referência (p2
) para o mesmo objeto Produto
ao qual p1
se refere.
Portanto, quando alteramos o preço do produto através da referência p2
com p2.setPreco(2.00);
, estamos alterando o mesmo objeto ao qual p1
se refere. Por isso, quando imprimimos o preço do produto através da referência p1
com System.out.println(p1.getPreco());
, o valor impresso é 2.00.
Somado a isso, em uma situação hipotética, podemos sim criar quantas referências quisermos para um mesmo objeto. No entanto, como mencionado, é importante considerar as boas práticas de programação. Criar muitas referências para o mesmo objeto pode tornar o código confuso e difícil de manter, além de aumentar a chance de erros.
Espero ter ajudado! Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!
Caso este post tenha te ajudado, por favor, marcar como solucionado ✓