其实java有内存泄漏现象
垃圾回收机制只能回收没有引用的对象,也就是说只能回收没有“指针”的对象,对于非引用类对象,垃圾回收机制就不能起作用
比如说,如果打开过多的数据库连接,那么这些不能被垃圾回收机制所处理。由于一般情况下很少有人打开过多的数据库连接,所以很少有人注意到这一点。
还有一种可能就是死循环也会出现内存泄漏,但是不是所有的死循环都会出现内存泄漏现象。对ArrayList操作的时候才有可能出现,
比如说
ArrayList
result=new
ArrayList();
for(int
i;i
}
这种可能会出现OutOfMemoryError,就是内存溢出
有内存泄漏,一般都是程序员自己没有将对象抛弃释放造成,
比如static对象
一直存在。而又不使用
驻留在内存里。