Junior — Middle
108
În ce loc din memorie se stochează de obicei un șir de caractere definit cu ghilimele în cod?
Companiile au fost întrebate
Red Collar
Răspuns de la AI
sobes.tech AI
Строки, заданные в коде с помощью кавычек (литералы строк), в Java обычно сохраняются в специальном пуле строк — String Pool. Этот пул находится в области памяти, называемой метаспейсом (Metaspace) в современных версиях JVM (до Java 7 — в PermGen).
Пул строк позволяет JVM хранить только одну копию каждой уникальной строковой константы, что экономит память и ускоряет сравнение строк по ссылке.
Пример:
String s1 = "hello";
String s2 = "hello";
System.out.println(s1 == s2); // true, обе ссылки указывают на один объект в пуле строк
Таким образом, строка, заданная в коде, обычно хранится в пуле строк в метаспейсе JVM.