• [jvm] -- 类文件结构篇


    • 类文件结构

    结构图 

    • 魔数
      • 头四个字节,作用是确定这个文件是否为一个能被虚拟机接收的 Class 文件。
    • Class 文件版本
      • 第五和第六是次版本号,第七和第八是主版本号。
      • 高版本的 Java 虚拟机可以执行低版本编译器生成的 Class 文件,但是低版本的 Java 虚拟机不能执行高版本编译器生成的 Class 文件。
    • 常量池
      • 字面量(接近于 Java 语言层面的的常量概念)
        • 类和接口的全限定名
        • 字段的名称和描述符
        • 方法的名称和描述符
      • 符号引用(属于编译原理方面的概念)
    • 访问标志
      • 用于识别一些类或者接口层次的访问信息,包括:这个Class是类还是接口,是否为 public或者abstract 类型,如果是类的话是否声明为final 等等。
    • 当前类索引,父类索引与接口索引集合
      • 类索引用于确定这个类的全限定名
      • 父类索引用于确定这个类的父类的全限定名
      • 接口索引集合用来描述这个类实现了哪些接口,这些被实现的接口将按implents(如果这个类本身是接口的话则是extends)后的接口顺序从左到右排列在接口索引集合中。
    • 字段表集合
      • 字段表(field info)用于描述接口或类中声明的变量。
    • 方法表集合
    • 属性表集合
    明明可以靠才华吃饭,非要靠脸~
  • 相关阅读:
    vue-学习笔记-事件处理
    微博api接口登陆,获取信息,分享微博
    ad批量上传
    jieba分词及词频统计小项目
    Python内置函数复习
    爬虫哈希破解密码
    pipenv 管理虚拟环境
    python工程化最佳实践
    matplotlib绘图难题解决
    pandas 实现rfm模型
  • 原文地址:https://www.cnblogs.com/lycsmzl/p/13213625.html
Copyright © 2020-2023  润新知