先看一下程式碼:
(推薦教學:java入門教學)
package cn.liang.jvm; public class SimpleHeap { private int id; public SimpleHeap(int id){ this.id = id; } public void show(){ System.out.println("My ID is " + id); } public static void main(String[] args) { SimpleHeap s1 = new SimpleHeap(1); SimpleHeap s2 = new SimpleHeap(2); s1.show(); s2.show(); } }
關係圖:
(視訊教學推薦:java視訊教學)
-
#SimpleHeap實例本身分配在堆記憶體中
描述SimpleHeap類別的資訊存放在方法區
#main()函數中s1和s2局部變數存放在Java棧記憶體中,並指向堆記憶體的兩個實例
堆區:
1、儲存的全部是對象,每個物件都包含一個與之對應的class的資訊。 (class的目的在於得到操作指令)
2、jvm只有一個堆區(heap)被所有執行緒共享,堆中不存放基本型別和物件引用,只存放物件本身。
堆疊區:
1、每個執行緒包含一個堆疊區,堆疊中只保存基礎資料型別的物件和自訂物件的參考(不是物件),物件都存放在堆區中
2、每個堆疊中的資料(原始型別和物件參考)都是私有的,其他堆疊不能存取。
3、堆疊分為3個部分:基本類型變數區、執行環境上下文、操作指令區(存放操作指令)。
方法區:
1、又叫靜態區,跟堆一樣,被所有的執行緒共用。方法區包含所有的class和static變數。
2、方法區包含的都是在整個程式中永遠唯一的元素,如class,static變數。
以上是棧記憶體、堆疊記憶體與方法區的關係分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!
陳述
本文轉載於:博客园。如有侵權,請聯絡admin@php.cn刪除

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
刺客信條陰影:貝殼謎語解決方案
1 個月前ByDDD
Windows 11 KB5054979中的新功能以及如何解決更新問題
3 週前ByDDD
在哪裡可以找到原子中的起重機控制鑰匙卡
1 個月前ByDDD
如何修復KB5055523無法在Windows 11中安裝?
2 週前ByDDD
Inzoi:如何申請學校和大學
3 週前ByDDD

熱工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

Dreamweaver CS6
視覺化網頁開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

Dreamweaver Mac版
視覺化網頁開發工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!