(十四)访问标志 Access_flags
生活随笔
收集整理的這篇文章主要介紹了
(十四)访问标志 Access_flags
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、概念
上一章節(jié)講到了常量池,如下圖,常量池之后便是訪問標志acess_flags,占2個字節(jié)(u2)。
?
?
二、例子
? 編寫一個接口。
public interface Test{public final String userName="ADMIN"; }編譯之后,用javap命令行打開,可看到訪問標志Access_flags。
C:\Users\Administrator\Desktop>javap -verbose Test.class Classfile /C:/Users/Administrator/Desktop/Test.classLast modified 2018-5-13; size 164 bytesMD5 checksum 0948ee61f2cbaaf5477f8c3bea7b62ceCompiled from "Test.java" public interface Testminor version: 0major version: 52flags: ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT Constant pool:#1 = Class #9 // Test#2 = Class #10 // java/lang/Object#3 = Utf8 userName#4 = Utf8 Ljava/lang/String;#5 = Utf8 ConstantValue#6 = String #11 // ADMIN#7 = Utf8 SourceFile#8 = Utf8 Test.java#9 = Utf8 Test#10 = Utf8 java/lang/Object#11 = Utf8 ADMIN {public static final java.lang.String userName;descriptor: Ljava/lang/String;flags: ACC_PUBLIC, ACC_STATIC, ACC_FINALConstantValue: String ADMIN} SourceFile: "Test.java"- ?如上面橙色標記,可知訪問標志值為:flags: ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
打開Test.class的字節(jié)文件,訪問標志值緊跟在常量池之后的兩個字節(jié),
?
- ?如上圖,訪問標志值為:0x0601 ,上面已經得出flags: ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT ,參照下表可知,ACC_PUBLIC=0x0001
- ,ACC_INTERFACE=0x0200,ACC_ABSTRACT =0x0400 ,? ?訪問標志值0x0601? =?0x0001 or?0x0200?0x0400?
?
?
?
轉載于:https://www.cnblogs.com/shyroke/p/9031951.html
總結
以上是生活随笔為你收集整理的(十四)访问标志 Access_flags的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《算法图解》第四章笔记与课后练习_快速排
- 下一篇: 工业4.0时代,SAP助力打造智能化工厂