Junior — Middle
Yaddaş idarəsində niyə lazım olan string literal havuzu nədir?
sobes.tech Süni İntellekt
AI-dan cavab
String Pool — Java-da unikal string obyektlərinin saxlandığı xüsusi yaddaş sahəsidir. Bir string literal yaradıldıqda, JVM onun artıq poolda olub-olmadığını yoxlayır. Əgər varsa, ona istinad qaytarır; yoxdursa, yeni əlavə edir.
Bunun nə üçün lazımdır?
- Yaddaşın qənaəti: eyni stringlər bir dəfə saxlanılır.
- Performansın artırılması: pool-dan olan literal-lər üçün istinadla müqayisə (==) mümkündür.
Misal:
String s1 = "hello";
String s2 = "hello";
System.out.println(s1 == s2); // true, hər iki istinad eyni obyektə işarə edir
String s3 = new String("hello");
System.out.println(s1 == s3); // false, s3 yeni obyekt, poolda deyil
Beləliklə, String Pool yaddaşın səmərəli idarə olunmasına kömək edir.