java-垃圾回收、this、static

本文详细探讨了Java中的垃圾回收机制,包括年轻代、年老代和持久代的划分,以及 Minor GC 和 Full GC 的工作原理。此外,还深入讲解了 `this` 关键字的本质和常见用法,以及 `static` 关键字的作用和特点,通过实例展示了如何在代码中正确使用 `this` 和 `static`。
摘要由CSDN通过智能技术生成

学习大纲

  • 分代垃圾回收机制
  • this的本质(用于对象的)
  • 创建一个对象分为如下四步
  • static(静态的)关键字

学习笔记

分代垃圾回收机制

基于的事实:不同的对象的生命周期是不一样的,因此,不同的生命周期额的对象可以采取不同的回收算法,以提高效率。
对象分为:年轻代、年老代、持久代。
JVM将堆内存划分为:Eden、Survivor、和Tenured/Old
1.年轻代
所有新生成的对象首先是放在Eden区。年轻代的目标就是尽可能快速的收集掉那些生命周期短的对象,对应的是Minor Gc,每次Minor Gc会清理掉年轻代的内存,算法采用效率较高的复制算法,频繁的操作,但是会浪费内存空间。当“年轻代”区域存放满对象后,就将对象放到年老代区域
2.年老代
在年轻代中经历了N(默认15)次垃圾回收后仍然存活的对象,就会放到年老代中。因此,可以认为年老代中存放的都是一些生命周期较长的对象。年老代对象越来越多,我们就需要起到Major Gc和Full Gc(全量回收),来一次大扫除,全面清理年轻代区域和年老代区域
3.持久代
用于存放静态文件,如java类,方法等,持久代对垃圾回收没有显著影响

垃圾回收过程:
1.新创建的对象,绝大多数都会存储在Eden中,
2.当Eden满了(达到一定比例)不能创建新对象,则出发垃

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值