String []nomes = {new String(“JOSE”), new String(“MARIA”), new String(“JOAO”)};
quantos objetos eu teria na memoria, considerando a questao de valores literais ?, seriam 4 ou 7 (pois dizem que um valor literal é mais um objeto na memoria?)
Bem, creio que serão 7 objetos, embora os 3 objetos usados nos construtores de String (“JOSE”, “MARIA” e “JOAO”) sejam copiados no interior dos construtores sem que reste qualquer referência a eles, e provavelmente não demorarão a ser descartados pelo Coletor de Lixo.
T
thingol
Esse tipo de pergunta é bem capciosa, já que na verdade há mais objetos que você está pensando.
(Há um campo “private char value[]” na classe String.)
Tchello
Thingol, me desculpe mas será que você poderia ser mais específico?
Fiquei curioso e estou na dúvida de quantos objetos realmente estão instanciados por causa dos chars.
Será que você poderia explica-los?
Muito obrigado!