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

您的位置:首頁技術文章
文章詳情頁

java 基本數據類型各種情況下在內存中存儲位置?

瀏覽:77日期: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(); // 實例1 }}我的理解

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

實例1:存儲在堆內存中

變量1:存儲在方法棧中

實例1中的字段1:存儲在堆中

實例1中的字段2:存儲在堆中

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

問題解答

回答1:

我們不能一概而論的說,基本類型數據都是放在棧中的!當某個 類實例 中具有基本類型時,基本類型就放在堆中!

回答2:

內存分為堆和棧,這你已經知道了。

堆內存是屬于JVM的,棧內存是屬于方法的,方法結束了,棧內存也就沒了。

程序運行main函數時,有一個堆內存,一個main的棧內存

int var3 = 0;這個var3,是放在main函數的棧內存中的,是一個值。

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

我們再看堆內存中的這個實例,他有2個字段,他們都是存放在堆中的。

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

回答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

標簽: java
相關文章:
主站蜘蛛池模板: 你懂得在线网址 | 一级特黄aaaaaa大片 | 一级片网站在线观看 | 大杳蕉伊人狼人久久一本线 | 中文免费观看视频网站 | 国产一级在线现免费观看 | 男人黄女人色视频在线观看 | 色婷婷5月精品久久久久 | 久热中文字幕在线观看 | 91全国探花精品正在播放 | 久久久国产视频 | 欧美激情一区二区三级高清视频 | 国产精品亚洲专区在线播放 | 免费一区二区三区视频狠狠 | 国产免费福利体检区久久 | 日批免费在线观看 | 国产三级精品三级国产 | 欧美性视频网 | 国产精品免费一区二区三区四区 | 欧美精品伊人久久 | 欧美日韩在线视频专区免费 | 1000部啪啪未满十八勿入福利 | 成人免费午夜视频 | 超级碰碰碰碰97久久久久 | 免费国产zzzwww色 | 亚洲欧美国产一区二区三区 | 在线观看自拍视频 | 91正在播放极品白嫩在线观看 | 欧美伦理片在线播放 | 香港毛片免费看 | 国产精品久久久久久久久电影网 | 国产产一区二区三区久久毛片国语 | 欧美aaaaaaaaaa| 欧美日韩亚洲第一页 | 国产精品国色综合久久 | 久久中文字幕美谷朱里 | 免费摸碰碰视频在线观看 | 青青伊人91久久福利精品 | 婷婷激情亚洲 | yiren22开心综合成人网 | 性欧美高清理论片 |