怎样释放JAVA程序运行中所用的内存

我不是专业人员,请问在用JAVA程序的过程中,因为用的越久JAVA就占用内存越多,所以我想知道哪种方法可以简便的释放JAVA内存

  JAVA具有自动的垃圾回收机制,不需要释放内存的操作;
  垃圾回收能自动释放内存空间,减轻编程的负担。这使Java 虚拟机具有一些优点。首先,它能使编程效率提高。在没有垃圾回收机制的时候,可能要花许多时间来解决一个难懂的存储器问题。在用Java语言编程的时候,靠垃圾回收机制可大大缩短时间。其次是它保护程序的完整性, 垃圾回收是Java语言安全性策略的一个重要部份。
  垃圾回收的一个潜在的缺点是它的开销影响程序性能。Java虚拟机必须追踪运行程序中有用的对象,而且最终释放没用的对象。这一个过程需要花费处理器的时间。其次垃圾回收算法的不完备性,早先采用的某些垃圾回收算法就不能保证100%收集到所有的废弃内存。当然随着垃圾回收算法的不断改进以及软硬件运行效率的不断提升,这些问题都可以迎刃而解。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-19
你可以通过GC() 来释放,但是它不能保证立即释放,但是它会根据当前情况进行加权,可以确保垃圾回收器比正常情况提前启动
第2个回答  2013-08-19
java中的内存都是自动释放的,但是什么时候就不能自己决定了,都是靠虚拟机来分配的
第3个回答  2013-08-19
直接把对象=null,就会被自动回收
第4个回答  推荐于2017-10-15
Java中的内存都是自动回收的,不需要你显式的去调用释放。 如果非要这么做,你可以用JDK下的程序 jconsole连接到Java虚拟机,然后执行GC操作。

另外,用的越久,占用内存越多,还应该是代码的问题。

实在解决不了,可以调大虚拟机的最大内存;或者定期重启吧。本回答被提问者和网友采纳
相似回答