一、什么是Java中的内存泄露?

  在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,

  首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的即程序以后不会再使用这些对象

  如果对象满足这两个条件,这些对象就可以判定为Java中的内存泄漏,这些对象不会被GC所回收,然而它却占用内存。

  在C++中,内存泄漏的范围更大一些。有些对象被分配了内存空间,然后却不可达,由于C++中没有GC,这些内存将永远收不回来。

  在Java中,这些不可达的对象都由GC负责回收,因此程序员不需要考虑这部分的内存泄露。

  通过分析,我们得知,对于C++,程序员需要自己管理边和顶点,而对于Java程序员只需要管理边就可以了(不需要管理顶点的释放)。

  通过这种方式,Java提高了编程的效率。

最新文章

  1. 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用
  2. ASP.NET MVC中给所有的cshtml页面引用命名空间
  3. Web前端性能优化教程01:减少Http请求
  4. 使用新版Android Studio检测内存泄露和性能
  5. 8天掌握EF的Code First开发系列之2 Code First开发系列之领域建模和管理实体关系
  6. [cb] Assetbundle打包(一)
  7. 03-树3 Tree Traversals Again
  8. [转] 字符串模式匹配算法——BM、Horspool、Sunday、KMP、KR、AC算法一网打尽
  9. 一个优秀php程序员应具备什么样的能力
  10. POJ 2914 Minimum Cut 最小割图论
  11. haxe 嵌入swf 读取里面的内容
  12. 如何下载github项目中的部分文件(文件夹)
  13. mysql的连接处理过程
  14. bzoj 2500 幸福的道路 树上直径+set
  15. 第六周LINUX学习笔记
  16. VBScript 学习笔记
  17. python中用xlsxwriter创建图表
  18. Msf的一些常用操作
  19. Chap8:加密货币TOP100[《区块链中文词典》维京&甲子]
  20. CentOS 下搭建SVN

热门文章

  1. java 死锁演示
  2. ZROI 19.08.03 分治与离线
  3. 百度地图api的简单应用(二):轻量级路径规划
  4. MySQL 运维管理平台
  5. 1.端口被占用问题:Embedded servlet container failed to start. Port 8097 was already in use.
  6. 【java工具类】生成Zip压缩包
  7. java大文件上传
  8. sh_06_女友的节日
  9. 南京网络赛 E K Sum
  10. EasyUI datagrid动态加载json数据