開心生活站

位置:首頁 > IT科技 > 

解釋內存中的棧,堆和靜態區的用法

IT科技2.92W

內存中的棧,堆和靜態區的用法:

解釋內存中的棧,堆和靜態區的用法

1、堆區:專門用來保存對象的實例(new 創建的對象和數組),實際上也只是保存對象實例的屬性值,屬性的類型和對象本身的類型標記等,並不保存對象的方法。

2、棧區:對象實例在Heap 中分配好以後,需要在Stack中保存一個4字節的Heap內存地址,用來定位該對象實例在Heap 中的位置,便於找到該對象實例。

3、靜態區/方法區:方法區又叫靜態區,跟堆一樣,被所有的線程共享。方法區包含所有的class和static變量。方法區中包含的都是在整個程序中永遠唯一的元素,如class,static變量。全局變量和靜態變量的存儲是放在一塊的,初始化的全局變量和靜態變量在一塊區域, 未初始化的全局變量和未初始化的靜態變量在相鄰的另一塊區域。

標籤:內存 靜態 棧堆