1.概念:创建对象会占用内存,如果不需要则要清除,引入垃圾回收机制(GC,Garbage Collection)解决c++头疼的内存管理问题。
2.目的:清除不再使用的对象,有效防止内存泄露,有效使用空闲内存。
ps:内存泄露是指该内存空间使用完毕之后未回收,在不涉及复杂数据结构的一般情况下,Java 的内存泄露表现为一个内存对象的生命周期超出了程序需要它的时间长度,我们有时也将其称为“对象游离”。
3.使用:根据JVM内部机制的GC算法自动回收。
4.GC回收前的调用:object对象的finalize()方法,它可以在对象被回收之前做一些事情,可以进行重写。但由于GC的启动时间依GC算法而定,所以尽量避免使用。
5.下面简单介绍几种回收情况:
① 没有牌子即垃圾
比如,我们把一个对象参考到另一个名称空间,原空间没有被任何名称参考,即会被回收。
② 链状参考的回收情况
Car car=new Car();
car.next&#