1.JVM三塊主要的內(nèi)存: 棧內(nèi)存(數(shù)據(jù)結(jié)構(gòu))、堆內(nèi)存、方法區(qū)內(nèi)存。
2.方法區(qū)最先有數(shù)據(jù):方法區(qū)中存放代碼片段,存放class字節(jié)碼。
3.堆內(nèi)存:儲(chǔ)存通過(guò)new運(yùn)算符創(chuàng)建的對(duì)象以及對(duì)象的實(shí)例變量(對(duì)象級(jí)別的變量)。
3.棧內(nèi)存:棧內(nèi)存中儲(chǔ)存方法執(zhí)行時(shí)的內(nèi)存空間以及局部變量。
4. 方法調(diào)用時(shí):壓棧。分配空間。
??? 方法結(jié)束時(shí):彈棧。釋放空間。
???? 棧特點(diǎn): 先進(jìn)后出,后進(jìn)先出。
5.方法重載機(jī)制:java中允許方法名相同的情況出現(xiàn)。
如果方法名相同情況下,編譯器會(huì)通過(guò)方法的參數(shù)類型進(jìn)行方法的區(qū)分。
在同一個(gè)類中,方法名相同、參數(shù)列表不同(個(gè)數(shù)、類型、順序不同)會(huì)發(fā)生方法重載。
方法重載和方法的修飾符列表、返回值類型無(wú)關(guān)。