LZ以前是c++程序员
其实 Java有gc 对内存保护的很好
内存溢出的情况不多。。

解决方案 »

  1.   

    内存溢出的原因就不多说了,说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。
    内存溢出的问题要看业务和系统大小而定,对于某些系统可能内存溢出不常见,但某些系统还是很常见的
    解决的方法,一个是优化程序代码,如果业务庞大,逻辑复杂,这个方法有限
    方法二就是物理解决,增大物理内存,然后通过java -Xms yyy -Xmx zzz启动程序 
      

  2.   

    分配过多的内存就会溢出,原因有很多种,例如:无法确定是否被引用的对象,java虚拟机不回收内存(内存泄漏),循环产生过多重复的对象实体,等等