Java中的堆記憶體和字串常量池有什麼區別?


堆記憶體

  • 堆記憶體是執行時資料區,所有Java類例項和陣列的記憶體都從此處分配。
  • JVM啟動時建立堆,應用程式執行期間堆的大小可能會增加或減小。
  • 可以使用–Xms VM選項指定堆的大小。根據垃圾收集策略,堆可以是固定大小或可變大小。可以使用–Xmx選項設定最大堆大小。
  • 預設情況下,最大堆大小設定為64 MB。

字串常量池

  • String 使用特殊的記憶體位置來重用String物件,稱為字串常量池。
  • 不使用new關鍵字建立的String物件儲存在堆的字串常量池部分。
  • 字串常量池的一個重要特性是,如果池中已存在相同的String常量,則不會建立相同的String物件。

更新於:2020年2月6日

5K+ 瀏覽量

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.