一、垃圾回收
1.什么叫垃圾回收?
1)回收目标:堆中的对象及其内存;对象或者数组的引用类型对象。
2)系统会自动在内存区为之分配一块内存,对象就保存在这块内存区内,当这块内存不再被任何变量引用时,这块内存就成为了垃圾,等待垃圾回收机制进行回收
2.回收的特征
1.垃圾回收机制只负责回收堆内存中的对象,不会回收任何物理资源(例如数据库连接、网络连接、IO流等资源)。
2.程序无法精准控制垃圾回收的运行,垃圾回收会合适的时候进行。当对象永久性地失去引用后,系统就会在合适的时候回收它所占得内存。
3.在垃圾回收机制回收对象之前,总会先调用它的finalize()方法。
3.强制垃圾回收:
1)System.gc():调用System类的gc()静态方法:System.gc().
2)Runtime.getRuntime().gc();
4.finalize() 方法