内存泄漏,内存泄露就是在内存的某一个区域内,所使用的内存无法释放,最终导致整个内存空间变小。
内存泄露的原因,一定是代码写的有问题,主要有以下几个原因,
第一种情况是在写代码的时候,如果使用的IO链接没有关闭,或者使用的数据库链接没有关闭都会导致内存泄露,因为它会一直占用着资源,无法被回收。
下面通过几个例子来说明内存泄漏,首先第一个。
在Stack这个类中定义的成员变量Obgect数组,用来存储对象的数组,然后定义了一个size的int类型的整数,初始值为0。然后又定义了一个静态的final修饰整数的cap=16。在构造方法中创建了一个对象数组,初始值的数组大小是16。然后push方法中,往这个数组中存入对象。pop方法中,从这个数组中取出对象,然后,取出之后对这个数组中的位置所指向的对象实例引用设置为null。然后返回对象。
|