卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

jdk8常量池存放在哪里 字符串常量池到底存放的是字符串引用還是字符串對(duì)象?

字符串常量池到底存放的是字符串引用還是字符串對(duì)象?如果你看字符串的源代碼,你會(huì)發(fā)現(xiàn)它是一個(gè)對(duì)象!s=“123”寫這句話時(shí),您將首先找出常量池中是否有字符串對(duì)象123。如果沒有字符串對(duì)象123,他將開始

字符串常量池到底存放的是字符串引用還是字符串對(duì)象?

如果你看字符串的源代碼,你會(huì)發(fā)現(xiàn)它是一個(gè)對(duì)象

!s=“123”

寫這句話時(shí),您將首先找出常量池中是否有字符串對(duì)象123。如果沒有字符串對(duì)象123,他將開始提取,1,2,3

然后將其拼接成一個(gè)對(duì)象,即“123”

如果還有另一個(gè)對(duì)象也需要這個(gè)對(duì)象,例如S1=“123”

此時(shí),操作S1時(shí)應(yīng)先到常量池中查找是否有這個(gè)對(duì)象,如果有,取直接尋址,因?yàn)槌A砍財(cái)?shù)據(jù)是共享的,

如果此時(shí)S1=“1234”則常量池不存在,它將被再次提取,1、2、3、4,然后重新組裝成常量池中的新對(duì)象

!字符串源代碼有一個(gè)私有變量,一個(gè)字符類型數(shù)組,用來提取這些單個(gè)字符,然后拼接成一個(gè)字符串對(duì)象

Java中的字符串常量池與Java中的堆和棧的區(qū)別?

Java常量池不在堆或堆棧中,這是獨(dú)立的內(nèi)存空間管理。

1. 堆棧:它存儲(chǔ)基本類型變量數(shù)據(jù)和對(duì)象引用,但對(duì)象本身不存儲(chǔ)在堆棧中,而是存儲(chǔ)在堆(新對(duì)象)或常量池(字符串常量對(duì)象存儲(chǔ)在常量池中)。堆:存儲(chǔ)所有新對(duì)象。

3. 常量池:存儲(chǔ)字符串常量和基本類型常量(publicstaticfinal)。

對(duì)于字符串:其對(duì)象的引用存儲(chǔ)在堆棧中。如果它們是在編譯時(shí)創(chuàng)建的(直接用雙引號(hào)定義),則它們存儲(chǔ)在常量池中。如果只能在運(yùn)行時(shí)(New)確定它們,則將它們存儲(chǔ)在堆中。對(duì)于相等的字符串,常量池中總是只有一個(gè)副本,堆中總是有多個(gè)副本。