咕泡計算機(jī)網(wǎng)絡(luò)原理及應(yīng)用\/--》ccys1473
方法的內(nèi)存分配與變化
方法只定義不調(diào)用是不會執(zhí)行的,并且在JVM中也不會給方法分配“運(yùn)行所屬”的內(nèi)存空間,只有在調(diào)用方法時才會動態(tài)的給這個方法分配所屬的內(nèi)存空間
JVM內(nèi)存劃分上有這三塊主要的內(nèi)存空間:方法區(qū)內(nèi)存、棧內(nèi)存、堆內(nèi)存
方法代碼片段屬于.class字節(jié)碼文件的一部分,字節(jié)碼文件在類加載的時候被放到了方法區(qū)當(dāng)中,所以JVM中的三塊主要的內(nèi)存空間中方法區(qū)內(nèi)存最先有數(shù)據(jù)——方法代碼片段
棧內(nèi)存中分配方法運(yùn)行的所屬內(nèi)存空間
方法在調(diào)用的瞬間,給該方法分配內(nèi)存空間,在棧中發(fā)生壓棧動作,方法調(diào)用結(jié)束之后,給該方法分配的內(nèi)存空間全部釋放,此時發(fā)生彈棧動作
局部變量運(yùn)行階段內(nèi)存在棧中分配
標(biāo)簽: