天天看點

Java 自動記憶體管理機制

記憶體管理概述:

c/c++程式員,在記憶體管理方面,凡事都事必躬親,既可以完全控制記憶體配置設定,也必須擔負着每一個對象從建立到回收的方方面面的工作。然而java 程式員在虛拟機自動記憶體管理的前提下,不必親自去管理記憶體,這樣會省下很多事情,但是一旦出現記憶體洩露和記憶體溢出的問題,如果不對記憶體配置設定管理很了解的話,拍出問題将是非常困難的一件事情,是以對于java開發高手來說,掌握記憶體管理是必要條件。

java記憶體區域

java記憶體運作時的資料區域

java虛拟機,在運作時會根據不同的需要把所管理的記憶體劃分為不同的幾個區域,不同的區域有不同的用途,其内容和資料的建立和銷毀時間都各部相同,下圖是java中記憶體的劃分:

Java 自動記憶體管理機制

java虛拟機運作時資料區域

程式計數器

java hotSpot虛拟機中對象在記憶體中處理過程

記憶體洩露處理

繼續閱讀