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)

Está certo dizer que existem 4 referências apontando para a conta (33, 44) no seguinte trecho do código?

...
ContaPoupanca[] contas = new ContaPoupanca[10];
ContaPoupanca cp1 = new ContaPoupanca(11,22);
ContaPoupanca cp2 = new ContaPoupanca(33,44);

contas[0] = cp1;
contas[1] = cp1;
contas[4] = cp2;
contas[5] = cp2;

ContaPoupanca ref1 = contas[1];
ContaPoupanca ref2 = contas[4];

//Acabei de realizar esse exercício sobre Arrays, porém penso que o certo seria 
//apenas 3 referências. É considerado como referência a criação do próprio 
//objeto/conta? Penso que como a conta está sendo criada não deveria ser 
//considerada uma referência, pois ela não aponta para si mesma.
3 respostas
solução

Boa noite, Eros! Como vai?

Temos 4 referências "olhando" o objeto new ContaPoupanca(33,44)! Elas são cp2, contas[4], contas[5] e ref2! É bom destacar que cp2 não é um objeto e sim uma referência que está olhando para o objeto criado após o sinal de igual!

Pegou a ideia? Qualquer coisa é só falar!

Grande abraço e bons estudos, meu aluno!

Obrigado pela atenção e pela orientação Gabriel. Você explicando dessa forma ficou mais fácil entender, que na verdade o objetivo criado é o que está apenas depois do sinal de igual e seguido de "new" para realmente criar o objeto/conta e o que vem antes do sinal é apenas uma referência. Obrigado!

Por nada, Eros! Sempre que precisar de alguma ajuda é só mandar aqui no fórum da Alura!

Grande abraço e bons estudos, meu aluno!