Class类文件结构--访问标志
Posted shianliang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Class类文件结构--访问标志相关的知识,希望对你有一定的参考价值。
访问标志的位置:在常量池结束之后的两个字节(16位)表示访问标志access_flags。
访问标志的作用:用于标识类或者接口层次的访问信息;比如该Class是类还是接口,是否为public类型、是否为abstract类型、是否是final类型等等。
访问标志的类型:参考博客《Java虚拟机原理图解》1.3、class文件中的访问标志、类索引、父类索引、接口索引集合
那么我们下面看一个具体的代码来分析一下(引用《深入理解java虚拟机》):
public final class TestClass { private int m; public int inc() { return m + 1; } }
把上面的代码编译成class文件
我们可以通过javap -verbose工具分析得知最后一个常量为java.lang.object
可以推测0x0021 = 0x0001 | 0x0020 通过查表可以直到0x0001表示ACC_PUBLIC ,0x0020表示ACC_SUPER
转载于:https://www.cnblogs.com/flyingcr/p/10428299.html
以上是关于Class类文件结构--访问标志的主要内容,如果未能解决你的问题,请参考以下文章
JVM14_Class文件结构细节魔数Class文件版本常量池访问标识(或标志)类索引|父类索引|接口索引集合字段|方法|属性表集合
Java 虚拟机原理Class 字节码二进制文件分析 四 ( 字段表数据结构 | 字段表详细分析 | 访问标志 | 字段名称 | 字段描述符 | 属性项目 )
Jvm(37),class文件结构-----类索引父类索引接口索引集合