java中存在的内存泄漏

大家都知道JAVA有着自己的优点---垃圾回收器的机制,这个开发人员带来了很大的方便,不用我们编程人员去

控制内存回收等问题,有效的解决了内存泄露的问题,不至于导致系统因内存问题崩溃。为了精确的回收内存,释放不

用的对象,GC要实时的监控着每个对象的运行状态--引用被引用等,当发现一个对象不被任何引用的时候,GC会在适

当的时机去回收它所占的内存,达到内存管理,但是仍然存在一种内存泄露问题,当一个对象在逻辑上已经没用了,但

是在语法上还被某个变量所引用,那么这个对象存在着引用,GC是不会回收它的,这就导致了内存泄露问题。

如:int i,i2;  return (i-i2);   //when i为足够大的正数,i2够大的负数。结果会造成溢位,导致错误。

内存泄漏(memory leak)指由于疏忽或错误造成程序未能释放已经不再使用的内存的情况。内存泄漏并非指内存

在物理上的消失,而是应用程序分配某段内存后,由于设计错误,失去了对该段内存的控制,因而造成了内存的浪费

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/PearlRan/p/4833038.html