垃圾回收原理和算法
内存管理
Java的内存管理很大程度就是:堆中对象的管理,其中包括对象空间的分配和释放
对象空间的分配:使用new关键字创建对象即可
对象空间的释放:将对象赋值null即可
垃圾回收过程:
任何一种垃圾回收算法一般要做两件基本事情:
1. 发现无用的对象
2. 回收无用对象占用的内存空间
垃圾回收机制保证可以将 "无用的对象" 进行回收
无用的对象指的就是没有任何变量引用该对象。Java的垃圾回收器通过相关算法发现无用对象,并进行清除和整理
垃圾回收相关算法:
1. 引用计数器
2. 引用可达法
3. 通用的分代垃圾回收机制