文章目录
一、Java 虚拟机内存分区
二、垃圾回收机制
三、引用计数器算法 ( 无法解决循环引用问题 )
一、Java 虚拟机内存分区
----
Java 虚拟机内存分区 :
所有线程共有的内存区域...堆 : 存放 创建的 对象实例 , 所有线程共享这个区域 , 堆是 垃圾回收的重点管理区域 ; 有 年轻代 , 老年代 空间 ;
年轻代 : 占整个 堆内存的
\cfrac{1}{3}...free 手动释放内存 ;
垃圾回收 的目标 是 垃圾对象 , 主要针对 堆内存 中的空间进行 ;
垃圾对象 的判断标准 : 没有任何作用的 被废弃的 对象 , 即 一个对象 没有任何引用 指向它 ;...三、引用计数器算法 ( 无法解决循环引用问题 )
----
引用计数器算法 判定 垃圾对象 : 使用引用计数算法 , 判定一个对象是否是垃圾对象 ;
为 对象 分配 引用计数器 , 当 有一个引用指向它时...0
, 此时该对象就是 垃圾对象 , 需要被回收 ;
目前成熟的 Java 虚拟机 没有使用 引用计数器 算法 , 因为 如果 两个对象 仅仅是 互相引用 , 这两个对象的引用计数器 都是
1