码迷,mamicode.com
首页 > 其他好文 > 详细

Class类文件结构--访问标志

时间:2020-05-04 17:49:06      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:lag   接口   技术   ESS   stc   flag   net   参考   img   

访问标志的位置:在常量池结束之后的两个字节(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类文件结构--访问标志

标签:lag   接口   技术   ESS   stc   flag   net   参考   img   

原文地址:https://www.cnblogs.com/shianliang/p/12827000.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!