zoukankan      html  css  js  c++  java
  • Java底层知识学习:Bytecode and JMM

    最近在跟着耗子哥的程序员练级指南学习Java底层知识,结合《深入理解Java虚拟机》这本书在看,写笔记,看资料,成长中……

    目前看完了第二章JMM和各内存区OOM的情况

    一篇图文并茂介绍字节码的文章:

    https://mahmoudanouti.wordpress.com/2018/03/20/introduction-to-java-bytecode/


    18-07-31更新:

    现在已经看完了前五章,从第六章开始,六七八章开始涉及Class的文件构成是什么?类加载的五个步骤“加载、验证、准备、解析、初始化”分别是什么?

    看完了常量池这一部分,是Class文件的资源仓库,记录与其他项目关联的数据结构。

    使用 javap -verbose 命令可以解析字节码文件。

    8/1更新:

    看书的速度明显慢下来了,显然开始要读干货了。

    今天看了字段表集合这一小节,带着前面对常量池一节的理解,读下来并不难。

    字段表,就是类变量以及实例变量的集合。什么与变量有关?首先是访问控制符(private, public, protected), 然后是能否修改(final), 是否为类变量(static), 并发可见性(volatile, 线程是否直接从主内存读), 是否可序列化(transient), 字段数据类型,字段名称。

    除了类型和名称,其他的都可以用boolean来表示。类型和名称则是引用常量表里的数据项。

    8/6更新:

    发现一篇总结比较好的JVM面试题: https://www.cnblogs.com/zuolun2017/p/6121782.html

    8/15更新:

    最近开始了一项新工作:解析class文件。

    今天解析到属性表(attribute field) ,解析Code 和 Exception,并且重构了代码。

  • 相关阅读:
    strstr 的使用
    提取文本中的单词,单词简单排序
    sort 与 qsort
    AC自动机妙用
    字符串中如何提取数值
    字符串提取问题
    字符串搜索
    最短路问题
    树莓派挂载移动硬盘
    Mac 更换桌面背景崩溃(闪退)
  • 原文地址:https://www.cnblogs.com/andrew-chen/p/9289592.html
Copyright © 2011-2022 走看看