美文网首页程序开发
【031】2020.12.13 周日 Java类文件结构

【031】2020.12.13 周日 Java类文件结构

作者: 算法成瘾者 | 来源:发表于2020-12-13 21:22 被阅读0次
    Java类文件结构

    1.无关性基石

    虚拟机和字节码存储格式

    2. Class类文件的结构

          2.1) 定义

            Class文件是一组以8字节为基础单位的二进制流

            2.2)Class文件格式:类似于C语言结构体的伪结构存储

                两种数据类型

                    无符号数

                        u1,u2,u4,u8

                    表

                    _info结尾

                某一类型的“集合”

        

            2.3) 魔数与Class文件的版本

                魔数

                    定义:每个Class文件的头4个字节被称为“魔数”(magic number)

                    作用:确定是否被虚拟机接收的class文件

                    值:0xCAFEBABE (咖啡宝贝)

                 版本号

                    Minor Version 次版本号,第5,6字节

                    Major Version 主版本号,第7,8字节

                常量池

                    喻为资源仓库

                    计数是从1而不是0开始的

                    两大类常量

                        字面量(Literal)

                        符号引用(Symbolic References)

                    类的创建和动态连接

                    17种常量类型(JDK 13)

                        CONSTANT_Integer_info等

                    分析Class文件字节码工具 javap

                    访问标志

                        access_flags

                            ACC_PUBLIC等(6个)

                    类索引,父类索引和接口索引集合

                        类索引(this_class)父类索引(super_class)接口索引集合(interfaces)

                        确定该类型的继承关系

                    字符表集合

                        描述符标识字符含义

    相关文章

      网友评论

        本文标题:【031】2020.12.13 周日 Java类文件结构

        本文链接:https://www.haomeiwen.com/subject/hsopgktx.html