Java的垃圾回收是指Java虚拟机提供的能力,用于在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间。垃圾回收回收的是无任何引用的对象占据的内存空间而不是对象本身。垃圾回收器的运行时间是不确定的,由JVM决定,在运行时是间歇执行的。虽然可以通过系统来强制回收垃圾,但是这个命令下达后无法保证JVM会立即响应执行,但经验表明,下达命令后,会在短期内执行你的请求。系统通常会感到内存紧缺时候去执行垃圾回收操作。垃圾回收过于频繁会导致性能下降,过于稀疏会导致内存紧缺。