返回介绍

Java 中存在内存泄漏吗

发布于 2024-01-03 22:04:14 字数 2585 浏览 0 评论 0 收藏 0

内存泄漏:(Memory Leak)是指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

从广义的内存泄漏来说Java是存在内存泄漏问题的。

但从严格意义上来说我认为Java是不存在内存泄漏的,因为在Java语言中只要对象不被任何第三方所引用,那它一定可以被垃圾回收器回收。在C++中内存泄漏问题是由于对象在被遗弃之前,没有释放掉那块内存。在C++中一但发生内存泄漏,那这块泄漏的内存就无法再被使用了。

但是大多数网友普遍认为Java也是存在内存泄漏的。他们所理解的内存泄漏都有一个时间约束条件,也就是长生命周期的对象持有短生命周期对象的引用,而长生命周期被遗弃之前,这个短生命周期对象所占用的内存就是无法被垃圾回收器回收。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文