大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節(jié)點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java高級課程之Java堆內存和棧內存的區(qū)別

Java高級課程之Java堆內存和棧內存的區(qū)別

更新時間:2020-07-03 15:02:00 來源:動力節(jié)點 瀏覽2438次

堆棧,這個名詞很多Java開發(fā)者在一開始學習Java的時候就經(jīng)常聽說了。

對于這個名詞來說,它描述的其實是JVM的內存模型,

如果面試中問到,堆棧具體對應著什么,不知道是否了解?

堆和棧

其實堆棧是兩個東西,在JVM中分別對應兩個不同的內存部分。

對于JVM內存模型來說,只要記住下面這張圖就足夠了,

Java高級課程之Java堆內存和棧內存的區(qū)別

對于左邊黃色的部分,就是JVM中的“堆”,相對應的右邊的則是"棧"。

在Java中,Heap用來表示堆。我們不作深入的研究,畢竟JVM是個龐大復雜的東西,

這里只基本介紹JVM的基礎知識部分。

比如Heap是用來干啥的?

提示一下,平時經(jīng)常實例化對象吧?

Student student=new Student();

這里實例化了的對象,就是存放在堆中。

具體的說,是存放在Heap Memory中。

還有,靜態(tài)變量也是在這里,還記得上面那張圖嘛,黃色部分分了上下兩個區(qū),

其中一個叫Method Area的區(qū)域,是用來存放靜態(tài)變量的。

你應該知道大名鼎鼎的爆棧吧,StackOverFlow,

這個網(wǎng)站可能解決了平時我們開發(fā)中遇到的90%的問題。

其實stack over flow本身是一種異常,這里的stack說的就是JVM里的棧。

而棧是用來干什么的呢,

舉個例子,平時我們寫的非靜態(tài)方法,執(zhí)行時就在棧里。

雖然這么說不夠準確,因為要說明白方法的執(zhí)行,需要了解棧幀的概念,但我們這里不作深入的分析。

現(xiàn)在不知道你是否明白,之前見過的stack over flow異常是怎么回事。

如果足夠好奇的話,

可以嘗試寫一個遞歸方法,

public boolean recursive(){....return recursive();}

然后嘗試讓這個遞歸無限的嵌套下去,

你就會看到StackOverFlowException了,

原因就是因為stack內存不足以運行方法。

總結

所以總的來說,JVM分為Head和Stack兩個部分

對于初學者,只要初步了解了這個基礎,基本能應付開發(fā)中遇到的問題。

但如果想要提高自己,最終都需要深入了解JVM的內存模型。

Java高級課程之Java堆內存和棧內存的區(qū)別

以上就是動力節(jié)點java培訓機構的小編針對“Java高級課程之Java堆內存和棧內存的區(qū)別”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 国产 magnet | 人人爱天天做夜夜爽 | 亚洲最大视频网 | 青草青青在线观看免费视频 | 亚洲欧美bt | 中文字幕一区视频 | 一道精品视频一区二区三区图片 | 92福利网 | 久久国产精品久久国产精品 | 久久国产精品99久久久久久牛牛 | 色综合久久六月婷婷中文字幕 | 久久精品国产主播一区二区 | 亚洲福利视频在线 | 污视频在线网站 | 伊人免费视频二 | 成人久久网 | 狠狠色噜噜狠狠狠狠米奇777 | 天天射天天射天天射 | 狠狠色欧美亚洲狠狠色五 | 亚洲精品一区二区中文 | 97欧美精品一区二区三区 | 国产精品免费_区二区三区观看 | 天天操天天谢 | 五月伊人网 | 国产精品永久免费视频 | 久久精品五月天 | 久久久久久久国产a∨ | 国产精品久久久久久久久久98 | 精品四虎免费观看国产高清午夜 | 日本免费不卡 | 四虎成人www国产精品 | 最近更新在线中文字幕一页 | 天天操天天射天天操 | 九九久久亚洲综合久久久 | 亚洲综合国产精品 | 久久精品免费看 | 日本午夜免费理论片 | 久久一区二区精品 | 久久久久久中文字幕 | 天天透天天狠 | 日韩在线国产 |