java內存管理學習

    在C++語言中,若是須要動態分配一塊內存,程序員須要負責這塊內存的整個生命週期。從申請分配、到使用、再到最後的釋放。這樣的過程很是靈活,可是卻十分繁瑣,程序員很容易因爲疏忽而忘記釋放內存,從而致使內存的泄露。Java語言對內存管理作了本身的優化,這就是垃圾回收機制。Java的幾乎全部內存對象都是在堆內存上分配(基本數據類型除外),而後由GCgarbage collection)負責自動回收再也不使用的內存。可是有一個問題就是內存管理中出現垃圾回收滯後的現象,若是不及時的可以釋放不用的內存,則會引發虛擬機內存泄露。因此,優化就體現的很明顯:html

    咱們須要知道GC在何時回收內存對象,什麼樣的內存對象會被GC認爲是「再也不使用」的。 Java中對內存對象的訪問,使用的是引用的方式。在Java代碼中咱們維護一個內存對象的引用變量,經過這個引用變量的值,咱們能夠訪問到對應的內存地址中的內存對象空間。java垃圾回收器中,若是存在一個對象的引用,那麼這些對象將佔盡和耗盡內存,由於自動化的垃圾處理器沒法證實這些對象的引用。局部變量不必清除,由於隨着方法的結束,這些內容會被自動清除。java

http://blog.csdn.net/xinyuetonghua/article/details/7744769 程序員

http://www.cnblogs.com/hnrainll/archive/2013/11/06/3410042.html 優化

相關文章
相關標籤/搜索