Junior — Middle
Magyarázza el a Java-ban a sztring pool fogalmát és célját.
sobes.tech MI
Válasz az MI-től
A Java String Pool egy speciális hely a memóriában, ahol az egyedi szöveg literálokat tárolják. Amikor szöveget literálként hozol létre, a JVM azt a String Pool-ba helyezi, hogy elkerülje ugyanazon szövegek többszöri tárolását és így memóriát takarítson meg.
Például, ha a kódban két ugyanolyan értékű szöveg van, mindkettő ugyanarra az objektumra fog hivatkozni a pool-ban, nem pedig két külön objektumot hoz létre.
Példa:
String s1 = "szia";
String s2 = "szia";
System.out.println(s1 == s2); // true, mindkét referencia ugyanarra az objektumra mutat
String s3 = new String("szia");
System.out.println(s1 == s3); // false, s3 egy új objektum a pool-on kívül
A String Pool célja a teljesítmény növelése és a memóriahasználat csökkentése az immutable szövegek újrahasználatával.