内存泄露:指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。
可以理解为:内存使用完后未归还。
内存泄漏积累过多后就会造成内存溢出。
举例:单例模式、各种连接完成后未释放 、变量不合理的作用域…
本质都是不使用的对象持续占用内存或未被及时回收。
内存溢出:是指程序在申请内存时,没有足够的内存空间供其使用。当发生内存溢出时,虚拟机会报OOM 的错误。
发生内存溢出的三个地方:虚拟机栈、堆区、方法区
内存泄露:指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。
可以理解为:内存使用完后未归还。
内存泄漏积累过多后就会造成内存溢出。
举例:单例模式、各种连接完成后未释放 、变量不合理的作用域…
本质都是不使用的对象持续占用内存或未被及时回收。
内存溢出:是指程序在申请内存时,没有足够的内存空间供其使用。当发生内存溢出时,虚拟机会报OOM 的错误。
发生内存溢出的三个地方:虚拟机栈、堆区、方法区