Java 中常說的常量池到底是什麼

2021-09-22 07:50:19 字數 525 閱讀 8661

class 檔案常量池指的是編譯生成的 class 位元組碼檔案,其結構中有一項是常量池(constant pool table),用於存放編譯期生成的各種字面量和符號引用,這部分內容將在類載入後進入方法區的執行時常量池中存放。

什麼是字面量和符號引用?

執行時常量池是方法區的一部分,是一塊記憶體區域。class 檔案常量池將在類載入後進入方法區的執行時常量池中存放。

乙個類載入到 jvm 中後對應乙個執行時常量池,執行時常量池相對於 class 檔案常量池來說具備動態性,class 檔案常量只是乙個靜態儲存結構,裡面的引用都是符號引用。而執行時常量池可以在執行期間將符號引用解析為直接引用。

執行時常量池就是用來索引和查詢欄位和方法名稱和描述符的。給定任意乙個方法或字段的索引,通過這個索引最終可得到該方法或字段所屬的型別資訊和名稱及描述符資訊。

字串常量池是全域性的,jvm 中獨此乙份,因此也稱為全域性字串常量池。

面試中的html doctype到底是什

宣告是指示 web 瀏覽器使用哪個 html 版本進行頁面編寫的指令。要始終向 html 文件新增 宣告,這樣瀏覽器才能獲知文件型別。在 html 4.01 中,宣告引用 dtd,因為 html 4.01 基於 sgml。dtd 規定了標記語言的規則,這樣瀏覽器才能正確地呈現內容。html5 不基於...

lq到底是什麼意思 柴犬的單雙血統到底是什麼意思?

1 單血統柴犬 其實柴犬根本就沒有單血統一說,之所以會出現這個名詞,是一些不良商家,想要借助血統來從中謀取更多的經濟利益,篤定買家對柴犬不了解,而會相信有單血統柴犬,比雙血統柴犬便宜。說白了單血統柴犬就是披了血統衣服的串串柴,雖說健康沒什麼大問題,但長大之後就會很難看。2 雙血統柴犬 雙血統柴犬就是...

柱座標系下的ns方程 笛卡爾座標系到底是什麼?

最近,我上傳了一張名為 數學的深淵 的,大家頗感興趣 可能被數學傷的很深吧 接下來的日子,我會和大家一起,開啟 十舍數學 號潛水艇,一層一層,前往數學海洋的最深處。希望大家備好 口糧 背上 行囊 出發!劃開海平面,我們數著1 2 3 4 5 並利用加減乘除法計算出海底矩形魚 圓形魚 三角形魚 離我們...