我的同事说:Java的内存回收机制就可以把所有的都释放掉,对吗

解决方案 »

  1.   

    java的垃圾回收机制能够回收对象,但一些重要资源,如文件,socket连接需要手动及时关闭。
      

  2.   

    JVM是可以自动回收 ,可是能手动关闭的流还是要自己把资源关闭,这样才能被垃圾回收啊,大型的项目都会对jvm进行调优的
      

  3.   

    LZ……这样的~对于一般的资源,JAVA自动回收,处理,释放……
    但是也有特殊情况会导致内存泄露,这是由于所调用的资源在使用以后不再使用,但是却可到达(可到达:java内部采用有向图的数据结构,这里的可到达就是指有相图有可到达该节点的路径,不熟悉,建议去看下数据结构)
    简而言之就是如果内存有无用但是可到达的资源,则需要人工手动去处理释放……具体如何释放,有2种方式,可参看API……这里不详细赘述!
    希望我的回答可以帮助你,麻烦给点分吧!
      

  4.   

    JAVA的垃圾回收机制,本意只是减少一些明显的对象释放代码,使程序集中于要做的事情主体,而不必对内存管理过多留意。但不等于可以过度利用这一点,对一些应该自己做的工作也偷工减料。至于哪些该做哪些不该做,在对每一个新对象进行学习时,示例应该都有表明。总之,在对技术非常熟之前,没必要主动玩技巧,而应宁愿多受点累养成好的编码习惯。这道理是很朴实的。