Quantos objetos estão sendo criados? [duplicado
Esta pergunta já tem uma resposta aqui:
Perguntas sobre o pool de strings do Java 7 respostasTem uma pergunta simples sobre o pool de instâncias Stringz em Java
Se eu tiver uma situação como esta: Cenário 1:
String s1 = "aaa";
String s2 = new String("aaa");
e, em seguida, virou o cenário 2:
String s1 = new String("aaa");
String s2 = "aaa";
Em cada caso - quantos objetos estão sendo criados no Pool e Heap de String? Eu presumi que ambos criariam um número igual de objetos (2 objetos - um único "aaa" para as duas linhas em cada cenário no pool String e um para o novo operador). Foi-me dito em uma visão geral que isso não estava correto - estou curioso para saber o que há de errado com meu entendimento?