日期:2014-05-20  浏览次数:20624 次

关于java里GC的问题。
有个问题一直搞不清楚:既然java有GC了,为什么有些对象还需要调用它的close方法来关闭?比如说输入输出流那些类。

------解决方案--------------------
上网找了一些相关的资料,自己总结了以下,希望能帮上忙,(我自己也学习中)

java 中的 "回收垃圾机制(GC) ", 他的回收的是针对那些没有任何引用的对象,如果的当虚拟机检测到本机内存将近不够用时,他就会自动调用System.gc()方法去回收那写对象,而腾出内存,但是java mv 不会自动出回收那些正在站用的资源的对象,也就是说如果你的那个程序还在运行,那么就回消耗资源,而对与一些加了锁的文件,如果你不及时的访问该文件的流关闭,其他流就不可以访问该文件!而close()就是为了解决这个问题的.