String Pool是String的一個很重要的概念

也就是String有一個String常數的池

會把之前生成過的String丟在裡面

當你使用相同的String時就會參考到同一個String常數

ex:

String a = "Hello";

String b = "Hello";

這時候系統不會產生兩個Hello, 而是產生一個Hello在String Pool內

String a和b則指到同一個位置

除非再產生新的String常數, 否則都只會對應到同一個

也就是一個String常數只會有一個值在String Pool內

而如果用String c = new String("Hello")的方式來產生

則c會直接產生一個String在Heap內對應過去

而不是參考到String Pool內的Hello

基本概念就只有這樣

如果要在看詳細的圖文說明

可以參考下列的網頁

 

1. 參考網頁http://java-journal.blogspot.tw/2012/06/string-pool-purpose-of-string-pool-in.html

01.png  

arrow
arrow
    文章標籤
    Java String Pool
    全站熱搜

    RX1226 發表在 痞客邦 留言(0) 人氣()