欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

Java中的字符串常量池與Java中的堆和棧的區別

呂致盈2年前17瀏覽0評論

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

Java常量池不在堆中也不在棧中,是獨立的內存空間管理。

1. 棧:存放基本類型的變量數據和對象的引用,但對象本身不存放在棧中,而是存放在堆(new 出來的對象)或者常量池中(字符串常量對象存放在常量池中。)

2. 堆:存放所有new出來的對象。

3. 常量池:存放字符串常量和基本類型常量(public static final)。

對于字符串:其對象的引用都是存儲在棧中的,如果是編譯期已經創建好(直接用雙引號定義的)的就存儲在常量池中,如果是運行期(new出來的)才能確定的就存儲在堆中。對于equals相等的字符串,在常量池中永遠只有一份,在堆中有多份。

java字符比較,Java中的字符串常量池與Java中的堆和棧的區別