1.7.0_79

  众所周知,Java是一门不用程序员手动管理内存的语言,全靠JVM自动管理内存,既然是自动管理,那必然有一个垃圾内存的回收机制或者回收算法。本文将介绍几种常见的垃圾回收(下文简称GC)算法。

  在Java堆上分配一个内存给实例对象时,此时在虚拟机栈上引用型变量就会存放这个实例对象的起始地址。

Object obj = new Object();

iOS培训,Swift培训,苹果开发培训,移动开发培训

  现在如果我们将变量赋值为null

obj = null;

iOS培训,Swift培训,苹果开发培训,移动开发培训

  此时可以看到Java堆上的实例对象无法再次引用它,那么它就是被GC的对象,我们称之为对象已死。那虚拟机栈上的obj变量呢?