Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Diferença entre instanciar String "direto" e com "new"

Boa noite!

O instrutor na Aula 4 - Java 5, informa que existem algumas diferenças entre instanciar uma String direto, da forma que é utilizada e correta, e com new.

    String instanciaDireta = "Alura";
    String instanciaComNew = new String("Alura");

O mesmo informa que instanciando diretamente a String, a JVM consegue otimizações que não consegue com o new.

Poderiam explicitar quais otimizações? Ou não é algo muito importante a desenvolvedores?

2 respostas
solução!

Quando você faz, String a = "a"; e String letraA = "a" você cria apenas um objeto na verdade, a JVM cria apenas um objeto "a" e o reaproveita (um pool de Strings), no curso de certificação java aqui da alura, isso é abordado, e é bem interessante xD.

Agora quando você faz com o operador new, dois novos objetos serão criados, não pegando desse pool de Strings.

Muito interessante, vou verificar esse curso mais para frente. Muito obrigado!