中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

JVM的內存分配方式是什么

JVM的內存分配方式是什么?這個問題可能是我們日常學習或工作經常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家帶來的參考內容,讓我們一起來看看吧!

成都創新互聯專注于黑河網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供黑河營銷型網站建設,黑河網站制作、黑河網頁設計、黑河網站官網定制、成都微信小程序服務,打造黑河網絡公司原創品牌,更為您提供黑河網站排名全網營銷落地服務。

java虛擬機編譯時的內存存儲有三類:

1、靜態(方法區)存儲

2、棧式存儲

3、堆式存儲

靜態存儲是指在編譯的時候就得確定這個數據的存儲需求,然后給它分配固定的內存,所以說靜態存儲不允許有可變的數據結構出現,因為可變的數據不會確定存儲空間

棧式存儲相比于靜態存儲正好相反,在編譯時,棧式存儲指定的存儲數據是不確定的,只有真正運行到這個數據的時候才知道,那時候才能為它分配內存空間

堆式存儲相對于棧式存儲,棧式存儲在分配空間前必須指定數據要分配多少內存,而堆式存儲則完全無法確定數據結構需要的內存空間,比如可變數組,對象實例,所以堆是由大片的可利用塊和空閑塊組成

棧和堆

靜態存儲相對簡單,所以我們著重分析棧和堆的關系和區別

區別
在棧中的數據一旦超過它的作用域之后,就會被釋放,內存會被其他數據占用
在堆中,分配的內存是由java虛擬機自動垃圾回收器管理,這些可變數組、對象在沒有引用變量指向他們的時候,才會變成垃圾,但仍然占著內存,之后再一個不確定的時間被垃圾回收器釋放掉

在一個JVM實例中,堆區只有一個,而棧可以有多個

關系
在堆中創建一個數據之后,可以在棧中定義一個變量,這個變量指向堆中的某個數據(指向數據的首地址),也就是說這個變量變成了堆中數據的引用變量,可以利用引用變量來訪問堆中的數據,這就是java的指針。

并且每個java應有都會有一個JVM實例,每個實例對應一個堆,在這個應有運行期間,所有的類實例和數組都放在這個堆中,在建立一個對象的時候會從兩個地方分配內存,在堆中是這個對象的實際值,而在棧(堆棧,也叫stack)中,分配的是堆中這個對象的索引

堆棧(stack)

先看下這張圖(嗯    畫的很形象)

JVM的內存分配方式是什么

JVM是基于堆棧的,每新建一個線程會分配一個堆棧,它是以幀為單位,有先進后出的特性(看圖可懂)

當激活一個java方法時,就為往堆棧中放入一個幀(這就是壓棧),在這個方法的執行過程中,這個幀就會用來保存數據

方法的存在有堆棧決定,而由于先進后出的形式,方法之間嵌套的越深,stack的內存就越難釋放,所以遞歸這樣的方法本人不推薦使用

下面貼出壓棧和出棧的具體實現

使用壓棧出棧來將字符串倒序

String value = "test 1234567890";
StringBuffer result = new StringBuffer();
 
Stack stack = new Stack();
 
for(char c : value.toCharArray()) {
  stack.push(c);
}
 
while (!stack.empty()) {
  result.append(stack.pop());
}
 
value = result.toString();

感謝各位的閱讀!看完上述內容,你們對JVM的內存分配方式是什么大概了解了嗎?希望文章內容對大家有所幫助。如果想了解更多相關文章內容,歡迎關注創新互聯行業資訊頻道。

分享名稱:JVM的內存分配方式是什么
文章鏈接:http://m.2m8n56k.cn/article40/gsegho.html

成都網站建設公司_創新互聯,為您提供定制開發網站內鏈搜索引擎優化網站設計Google品牌網站制作

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都app開發公司
主站蜘蛛池模板: 欧美色穴 | 永久免费不卡在线观看黄网站 | 久久这 | 天堂精品高清1区2区3区 | 国产精品资源手机在线播放 | 久久久久久久久久久久福利 | 国产成人丝袜视频在线视频 | 欧美上床视频 | a毛片视频免费观看影院 | 亚洲黄色片网站 | 国产乱码精品一区二区三区中 | 欧美 另类 精品一区视频 | hd最新国产人妖ts视频 | 国产成人精品实拍在线 | 成人午夜两性视频免费看 | 国产欧美日韩视频在线观看一区二区 | 香蕉tv亚洲专区在线观看 | 天堂一区二区三区在线观看 | 美女黄页网| 成人午夜在线 | 午夜精品一区二区三区在线观看 | 国产精品日本不卡一区二区 | 美女张开腿让男人桶爽免 | 毛片在线不卡 | japanesevideo乱子 japanese日本tube色系 | 亚洲最大情网站在线观看 | 国产欧美日韩视频免费61794 | 女人野外小树林一级毛片 | 亚洲日本一区二区三区 | 日韩一区二区三区在线免费观看 | 亚洲精品久久久久影院 | 国产成人精品日本亚洲专 | 欧美jizzhd精品欧美 | 国产高清一级片 | 成人综合网址 | 成人免费午夜视频 | 国产一区二区在线观看视频 | 欧美69| 成人影院在线免费观看 | 91精品国产免费网站 | 夜色邦合成福利网站 |