1.將show方法存入方法區,構造person方法,初始化變數name、age,構造方法移出棧
2.給main方法建立乙個棧,給name,age分別賦值,呼叫show方法,此時將物件的位址0x10傳遞給p1,p1.show()棧被移出
3.再次構造person方法,初始化變數name、age,構造方法被移出
4.給name、age分別賦值,呼叫show方法,此時將物件的位址 0x11傳遞給p2,p2.show()棧被移出
Java 程式執行過程的記憶體分析
記憶體分析先知 棧 1 每個執行緒私有,不能實現執行緒間的共享!2 區域性變數放置於棧中。3 棧是由系統自動分配,速度快!棧是乙個連續的記憶體空間!堆 1 放置new出來的物件!2 堆是乙個不連續的記憶體空間,分配靈活,速度慢!方法區 1 被所有執行緒共享!2 用來存放程式中永遠不變或唯一的內容。類...
電腦程式的執行過程分析
linux核心分析 課程第一次作業 程式的正確執行靠堆疊來維持,堆疊是一塊儲存資料的連續記憶體。乙個名為堆疊指標 esp 的暫存器指向堆疊的頂部,乙個名為堆疊指標 ebp 的暫存器指向堆疊的底部。堆疊的底部在乙個固定的位址。堆疊的大小在執行時由核心動態地調整。cpu實現指令push和pop,向堆疊中...
程式執行的過程分析 sky原創
程式執行的過程 比如我們要執行3 2 程式計數器 pc 指令位址 指令暫存器 ir 正在執行的命令 累加器 ac 臨時儲存體 那麼實際上執行了三條指令 每條指令又分為兩部分 取址 執行 取址就是從暫存器裡取一條指令放在ir暫存器 左上角的圖,pc暫存器裡面放的值是300 那麼我們就從記憶體位址為30...