java有垃圾回收器负责回收无用对象占用的内存资源。但也有特殊情况:假定你的对象(并非使用new)获得了一块“特殊”的内存区域,由于垃圾回收器只知道释放那些经由new分配的内存,所以它不知道该如何释放这块“特殊”内存。此时可以在类中定义一个finalize()方法,等待垃圾回收器调用。也可以手动调用垃圾回收器。
记住:对象有可能不被垃圾回收
只要程序没有濒临存储空间用完的那一刻,对象占用的空间就总也得不到释放。如果程序执行结束,并且垃圾回收器一直都没有释放你创建的任何对象的存储空间,则随着程序的退出,那些资源也会全部交给操作系统。