⑴ JAVA中實例化一個對象,成員方法中的參數會在哪分配內存(棧/堆)
成員方法?
JAVA中實例化一個對象 會實例該類中的一些成員變數
成員變數也要看是具體對象 還是基礎變數 基礎變數存儲在 棧中
而具體對象引用存在於棧中 具體內容存在堆中
一些特殊的變數 比如靜態變數會在類載入的時候在特殊的靜態區分配
L樓主說是成員方法??? 實例化對象 對成員方法中的參數是不產生影響的 只有實例對象調用方法的時候 其具體涉及到的方法體內的局部變數才會在內存中分配
分配方式依然是: java基礎變數 和java對象
基礎變數存儲在 棧中
而具體對象引用存在於棧中 具體內容存在堆中
⑵ JAVA中實例化一個對象,成員方法中的參數會在哪分配內存(棧/堆)
首先內存總體分為了4個部分,包括 stack segment 、heap segment、code segment 、data segment ;
其中我們程序中用關鍵字new出來的東西都是存放在heap segment;
程序中的局部變數存放在stack segment,這些局部變數是在具體方法執行結束之後,系統自動釋放內存資源(而heap segment中的資源需要java垃圾回收機制來處理);
程序中的方法,是內存中的code segment中的,而且是多個對象 共享一個代碼空間區域;
static靜態變數,需要放在內存中的data segment中,