zoukankan      html  css  js  c++  java
  • class类文件结构总结

    1.魔数与class文件版本等

    2.常量池

      常量池可以理解为Class文件之中的资源仓库。

      常量池中主要存放两大类常量:字面量和符号引用。

    字面量 文本字符串、声明为final的常量等
    符号引用 类和接口的全限定名,字段的名称和描述符,方法的名称和描述符

      描述符:描述字段的数据类型、方法的参数列表(包括数量,顺序以及类型)和返回值

    3.字段信息(字段表集合):描述类或接口中声明的变量,不包括在方法内部声明的变量,也不包括从超类或父接口中继承而来的字段

      (1)字段的修饰符

        pulibc,protected,private,static,final,volatile,transient

      (2)字段数据类型(描述符索引)

        无法固定,所以引用的常量池中的常量来描述。

      (3)字段名称(字段名称索引)

        无法固定,所以引用的常量池中的常量来描述。

      (4)属性表集合

    4.方法信息(方法表集合):

      (1)方法修饰符

        去掉了volatile和transient,增加了synchronized,native,abstract,strictfp等

      (2)方法名称索引

      (3)描述符索引

      (4)属性表集合

        Code:方法体中的代码经过编译器编译成字节码指令后,存放在Code属性中

    5.类信息

      (1)类索引

        确定这个类的全限定类名

      (2)父类索引

        确定这个类的父类的全限定类名

      (3)接口索引集合

        确定这些类实现了哪些接口

      (4)访问标识

        包括:这个Class是类还是接口,访问修饰符public final  abstract 等等。

  • 相关阅读:
    基于jQuery仿淘宝产品图片放大镜代码
    【家育通】 关于我们
    新房装修三大空鼓解决方法 为家居装修做好前奏
    MVC5+EF6 入门完整教程十一:细说MVC中仓储模式的应用
    MVC5+EF6 入门完整教程十
    MVC5+EF6 入门完整教程九
    MVC5+EF6 入门完整教程八
    MVC5+EF6 入门完整教程七
    MVC5+EF6 入门完整教程六
    MVC5+EF6 入门完整教程五
  • 原文地址:https://www.cnblogs.com/sstone/p/8548746.html
Copyright © 2011-2022 走看看