Как JVM ищет строку в константном пуле строк?

Я понимаю, что пул строковых констант по сути является ConcurrentHashMap. JVM использует шаблон проектирования FlyWeight для экономии памяти. JVM выполнит поиск пула (ConcurrentHashMap) и вернет ссылку на старый объект, иначе он создаст новый.

Попробуйте создать строковый литерал

String literal = "Hello Java!"

JVM не будет создавать "Привет, Java!" объект. Это будет сначала искать бассейн. Мой вопрос

Как JVM будет выполнять этот поиск, поскольку объект "Hello Java!" еще не существует, поэтому он не может вызвать метод хэш-кода на нем?

0 ответов

Другие вопросы по тегам