垃圾回收机制是什么 ?JVM 核心结构?

垃圾回收机制是什么

jvm的垃圾回收机制是GC(Garbage Collection),也叫垃圾收集器。GC基本原理:将内存中不再被使用的对象进行回收;GC中用于回收的方法称为收集器,由于GC需要消耗一些资源和时间,Java在对对象的生命周期特征进行分析后,按照新生代、老年代的方式来对对象进行收集,以尽可能的缩短GC对应用造成的暂停。 不同的对象引用类型, GC会采用不同的方法进行回收,JVM对象的引用分为了四种类型:

1. 强引用:默认情况下,对象采用的均为强引用(这个对象的实例没有其他对象引用,GC时才会被回收)

2. 软引用:软引用是Java中提供的一种比较适合于缓存场景的应用(只有在内存不够用的情况下才会被GC)

3. 弱引用:在GC时一定会被GC回收

4. 虚引用:由于虚引用只是用来得知对象是否被GC//帮我去掉一些多余的字留下重要部分

JVM 核心结构

  1. 类加载器

    • 负责将.class文件加载到内存中,供 JVM 使用。

  2. 方法区

    • 存储类元数据(类名、字段、方法)、常量池、静态变量等。

    • JDK 8+:由元空间(Metaspace)替代,使用本地内存。

  3. Java 堆

    • 所有线程共享的内存区域,存放对象实例和数组。

    • 分代管理(新生代、老年代),通过垃圾回收自动清理。

  4. Java 栈

    • 线程私有内存,存储方法调用的栈帧(局部变量、操作数栈、动态链接)。

    • 常见异常:栈溢出(StackOverflowError)。

  5. 直接内存

    • 非堆内存,直接使用系统物理内存(如 NIO 缓冲区)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值