java中内存溢出有几种,在什么情况下内存溢出

1)概念

内存泄漏定义:一个不再被程序使用的对象或变量还在内存中占有存储空间。

内存溢出 out of memory : 内存溢出就是你要的内存空间超过了系统实际分配给你的空间,此时系统相当于没法满足你的需求。内存泄漏的堆积会发生内存溢出。

2)

1.虚拟机栈和本地方法栈内存溢出

发生这种问题的原意是程序中使用了大量的jarclass,使java虚拟机装载类的空间不够。

2.堆内存溢出

发生这种问题的原因是java虚拟机创建的对象太多,在进行垃圾回收之间,虚拟机分配的到堆内存空间已经用满了。

3.方法区和运行时常量池溢出

猜你喜欢

转载自blog.csdn.net/qq_43154385/article/details/87359459