JVM你了解吗?最全总结

JAVA内存模型图

1程序计数器:记录当前线程所执行字节码的行号指示器

2虚拟机栈(Stack):存放了当前线程调用方法的局部变量表、操作数栈、动态链接、方法返回值等信息

 3、本地方法栈:为虚拟机使用的 Native 方法提供服务,后多与 JVM Stack 合并为一起

共享

4、 Java 堆(Heap):占据了虚拟机管理内存中最大的一块,唯一目的就是存放对象实例,存储对象的成员变量,

也是垃圾回收器主要管理的地方,故又称 GC 堆。

5、方法区:存储加载的类信息、常量区、静态变量JIT(即时编译器)处理后的数据等,类的信息包含类的版

本、字段、方法、接口等信息。需要注意是常量池就在方法区中。方法区因为总是存放不会轻易改变的内容,

故又被称之为“永久代”

提一下这个 Native 方法,指得就是 Java 程序调用了非 Java 代码,算是一种引入其它语言程序的接口 

6 、垃圾回收器分为串行回收器、并行回收器、并发回收器,串行垃圾回收器单线程,效率低,并行和并发回收器
为多线程,但是并发回收器会造成程序阻塞,所以使用并行回收器进行垃圾回收,过程中会产生垃圾回收碎片,
会自动转换为串行垃圾回收器,清理完碎片,自动转换为并行垃圾回收器,不会对程序造成影响。

2堆和栈的区别

功能方面:堆是用来存放对象的,栈是用来执行程序的。

共享性:堆是线程共享的,栈是线程私有的。

空间大小:堆大小远远大于栈。

3JVM的垃圾回收机制

     1.jvvm 的垃圾回收机制后很多方法和垃圾回收器,我只了解分代管理法和清除标记法。

2、在 jvm

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值