什麼是 Java 中的字串常量池?


直接以如下方式儲存字串時,

String str1 = "Hello";

JVM 在一個稱為字串常量池的獨立記憶體塊中建立了一個具有給定值的字串物件。

並且無論何時我們嘗試建立另一個字串,

String str2 = "Hello";

JVM 驗證字串常量池中是否存在任何具有相同值的字串物件,如果存在,則 JVM 將現有物件引用分配給新變數,而不是建立新物件。

當我們使用如下方式儲存字串時,

String str = new String("Hello");

irrespective of the contents of the String constant pool,將建立一個具有給定值的新物件。

更新時間:30-Jul-2019

686 瀏覽次數

開啟你的職業生涯

完成課程即可獲得認證

開始
廣告
© . All rights reserved.