JVM(更新中)

        Jvm相信刚刚工作的很陌生,但工作3年左右的肯定不陌生,这个时候如果不是在大厂,工作3年大多数已经跳槽过1到2次了,有的更多,每次面试相信一定会

问你JVM相关知识,可工作中真的用的上吗?90%情况这个工作年限很少用上,用上的时候也是百度一下,大多数也没真的去搞一下,我先介绍下理论知识,然后

在梳理一下实战内容

        在介绍之前推荐大家阅读:《深入理解JAVA虚拟机》这本书,真的写的不错,虽然工作意义不大,不如学点微服务,框架之类,但我觉得修炼内功这个是必须要有的

1.  JVM是什么

       jvm是构建出来的一个虚拟计算机,用来运行.class文件的,既然是虚拟计算机,它就类似计算机的一些特性

2. JVM的组成

      2.1 运行时区域: 方法区、程序计数器、虚拟机栈、Java堆、本地方法栈、运行常量池、直接内存

      2.2 执行引擎

      2.3 本地接口

      2.4 类加载器ClassLoader:Bootstrap、Extension、Application(系统加载器)、自定义

3. 对象的创建方式

      3.1 指针碰撞:内存规整情况下使用该方式

      3.2 空闲列表:内存不规整情况下使用

4.对象线程安全处理的方式

      4.1 本地线程分配缓存

      4.2 同步处理

5.对象的布局

      5.1 对象头:MarkWord、类型指针

      5.2 实例数据

      5.3 对齐填充

6.对象的访问方式

      6.1 句柄访问:稳定的句柄地址

      6.2 直接指针访问:速度快、节约开销

7. OutofMemoryError

      7.1. java堆溢出

      7.2. 虚拟机栈和本地方法栈溢出

      7.3. 方法区和运行时常量池溢出

      7.4.本机直接内存溢出

8. GC是什么

      垃圾收集器

9. 对象回收方法

        9.1引用计数法

        9.2可达性分析法

10.垃圾收集算法

       10.1 标记清除算法

       10.2 复制算法

       10.3 标记整理算法

       10.4 分代收集法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值