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 分代收集法

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值