duas sequências com o mesmo conteúdo serão armazenadas no mesmo local de memória?

Esta é uma pergunta que eu tenho em uma entrevista.

Eu tenho duas cordas definidas como

String s1="Java";
String s2="Java";

Minha pergunta é se essas duas referências apontam para o mesmo local de memória. Em geral, quando criamos strings idênticas (sem nova palavra-chave), o conteúdo é armazenado na memória apenas uma vez e todos os objetos String com o mesmo conteúdo apenas se referem ao mesmo local, sem armazenar a string "Java" redundantemente? Os códigos hash de s1 e s2 são os mesmos. Mas os hashcodes dependem diretamente da localização da memória do objeto?

questionAnswers(9)

yourAnswerToTheQuestion