Por que String é imutável em Java?
Me perguntaram em uma entrevista por que String é imutável
Eu respondi assim:
Quando criamos uma string em java comoString s1="hello";
um objeto será criado empool de strings (olá) es1 estará apontando paraOláAgora, se fizermos novamenteString s2="hello";
outro objeto não será criado, mass2 apontará parahello
PorqueJVM primeiro verificará se o mesmo objeto está presente nopiscina de cordas ou não. Se não estiver presente, apenas um novo será criado.
Agora, se suponha que o java permita que a string seja mutável, se mudarmoss1 parahello world
entãos2 valor também seráhello world
então java String é imutável.
Alguém pode me dizer se minha resposta édireito ouerrado?