亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

java 基本數(shù)據(jù)類型各種情況下在內(nèi)存中存儲位置?

瀏覽:72日期:2024-01-13 17:24:47

問題描述

問題:

如何理解《Java編程思想-第四版》P23 中,這個變量直接存儲“值”,并置于堆棧中,因此更加高效一句中的 “堆棧” 兩字,到底是堆還是棧?情況如下:

class demo { private int var1; // 字段1 private Integer var2; // 字段2 public static void main(String[] args) {int var3 = 0; // 變量1demo obj1 = new demo(); // 實(shí)例1 }}我的理解

參考《Java編程思想-第四版》P23 和 《深入理解Java虛擬機(jī):JVM高級特性與最佳實(shí)踐 第2版》P39-P43,對于該 demo

實(shí)例1:存儲在堆內(nèi)存中

變量1:存儲在方法棧中

實(shí)例1中的字段1:存儲在堆中

實(shí)例1中的字段2:存儲在堆中

如果是存儲在堆中的話,何來高效一說?

問題解答

回答1:

我們不能一概而論的說,基本類型數(shù)據(jù)都是放在棧中的!當(dāng)某個 類實(shí)例 中具有基本類型時,基本類型就放在堆中!

回答2:

內(nèi)存分為堆和棧,這你已經(jīng)知道了。

堆內(nèi)存是屬于JVM的,棧內(nèi)存是屬于方法的,方法結(jié)束了,棧內(nèi)存也就沒了。

程序運(yùn)行main函數(shù)時,有一個堆內(nèi)存,一個main的棧內(nèi)存

int var3 = 0;這個var3,是放在main函數(shù)的棧內(nèi)存中的,是一個值。

之后demo obj1 = new demo();main函數(shù)的棧內(nèi)存中有了一個引用變量,obj1,指向了堆內(nèi)存中new出來的這個實(shí)例。

我們再看堆內(nèi)存中的這個實(shí)例,他有2個字段,他們都是存放在堆中的。

等到main函數(shù)運(yùn)行結(jié)束時,假如還有別的線程在運(yùn)行,JVM還沒有結(jié)束,此時,main函數(shù)的棧內(nèi)存被清除,var3,不在了,obj1這個引用變量也不在了,但是堆內(nèi)存中的那個實(shí)例依然在,如果沒有別的引用變量 指向它 ,那么它將在稍后被清除。

回答3:

是翻譯錯誤,原文中用的是stack,即棧,而不是堆棧。以下是原文:

Special case: primitive types

One group of types, which you’ll use quite often in your programming, gets special treatment. You can think of these as “primitive” types. The reason for the special treatment is that to create an object with new—especially a small, simple variable—isn’t very efficient, because new places objects on the heap. For these types Java falls back on the approach taken by C and C++. That is, instead of creating the variable by using new, an “automatic” variable is created that is not a reference. The variable holds the value directly, and it’s placed on the stack, so it’s much more efficient.

回答4:

p22,堆棧指的是stack,堆指的是heap

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 9久热久re爱免费精品视频 | 一区二区三区视频在线 | 国产精品久久国产精品99 | avv天堂| 最新avtom永久地址免费 | 成人啪啪网站18 | 精品福利视频在线观看视频 | 成人国产精品2021 | yy6080韩国日本三理论 | 亚洲综合日韩欧美一区二区三 | 亚洲一级生活片 | 欧美精品成人一区二区视频一 | 99成人在线视频 | 做a网站 | 手机在线国产视频 | 中文字幕播放 | 黄毛片一级毛片 | 国产久热香蕉在线观看 | 国产真实乱人视频在线看 | 久久亚洲影院 | 免费观看国产精品 | 黄色大片在线观看 | 黑人巨茎xxx免费视频 | 欧美三级欧美成人高清www | 精品久久久久国产免费 | 欧美3p在线观看一区二区三区 | 婷婷玖玖 | 国产成人亚洲日本精品 | 午夜水蜜桃视频在线观看 | 国产黄视频在线观看 | 一区毛片 | 国产黄频在线观看高清免费 | 国产在线观看91精品一区 | 欧美性高清在线 | 色婷婷色99国产综合精品 | 2020年国产一国产一级毛卡片 | 麻豆md国产在线观看 | 夜婷婷| 在线视频观看国产 | 看成年全黄大色黄大片 | 亚洲视频手机在线 |