Čo je fond reťazcov v jazyku Java?
Čo je fond reťazcov v jazyku Java?

Video: Čo je fond reťazcov v jazyku Java?

Video: Čo je fond reťazcov v jazyku Java?
Video: Java Tech Talk: Telegram бот на java за 1 час 2024, November
Anonim

Ako už názov napovedá, String Pool v jave je a bazén z Struny uložené v Java Pamäť haldy. My to vieme Reťazec je špeciálna trieda v java a môžeme vytvárať Reťazec objekty pomocou nového operátora, ako aj poskytovaním hodnôt v dvojitých úvodzovkách.

Aké je týmto spôsobom využitie fondu reťazcov v jazyku Java?

The Java reťazec konštantný bazén je oblasť v pamäti haldy, kde Java obchody doslovne reťazec hodnoty. Halda je oblasť pamäte použité pre prevádzkové operácie. Keď sa vytvorí nová premenná a pridelí sa jej hodnota, Java skontroluje, či táto presná hodnota existuje v bazén.

Okrem vyššie uvedeného, ako funguje reťazec v bazéne reťazcov? Na zníženie počtu Reťazec objekty vytvorené v JVM, Reťazec trieda drží a bazén z struny . Zakaždým a reťazec je vytvorený literál, JVM skontroluje reťazec doslovný bazén najprv. Ak reťazec neexistuje v bazén , nový Reťazec objekt sa inicializuje a umiestni sa do bazén.

V tejto súvislosti, prečo je potrebný reťazec pool?

Je to bezpečné, pretože Reťazec je nemenný v Jave. Výsledkom je, že s aj t ukazujú na rovnaký objekt a ušetria sa trochu pamäte. Názov ' strunový bazén “pochádza z myšlienky, ktorá už bola definovaná reťazec sú uložené v niektorých bazén “a pred vytvorením nového Reťazec kompilátor objektov skontroluje, či áno reťazec je už definovaný.

Čo je hlavná pamäť v Jave?

Po prvé, podľa " Hlavná pamäť "máme na mysli ' Java haldy, ako ju vidí JVM'. JVM môže vo všeobecnosti voľne pracovať na lokálnej kópii premennej. Napríklad kompilátor JIT môže vytvoriť kód, ktorý načíta hodnotu a Java premennej do registra a potom pracuje na tomto registri.

Odporúča: