Java學(xué)習(xí)隨筆4
JVM的內(nèi)存分配:
首先,jvm的內(nèi)存主要分為三大塊:堆,棧,方法區(qū)。
堆:jvm內(nèi)存中最大的一塊。用于存放對(duì)象實(shí)例。所有線程共享,也是垃圾回收機(jī)制的主要管理區(qū)域。
棧:存放基本數(shù)據(jù)類型,對(duì)象的引用地址。是線程私有的。每個(gè)方法被執(zhí)行的時(shí)候都會(huì)同時(shí)創(chuàng)建一個(gè)棧幀,用于存儲(chǔ)局部變量表、操作棧、動(dòng)態(tài)鏈接、方法出口等信息。
方法區(qū):所有線程共享。用來(lái)存放已被加載的類的信息、常量、靜態(tài)變量、即時(shí)編譯器編譯后的代碼