我正在挖掘The ClassFile
Structure。
根据上面提到的文件,attribute_info
可以出现在各种位置。
我的问题是如何区分attribute_info
s的类型?
我知道我可以通过他们的constant_info
s区分tag
s。
我怎样才能区分attribute_info
s?
所有attribute_info
都是这样的。
attribute_info {
u2 attribute_name_index;
u4 attribute_length;
u1 info[attribute_length];
}
Fields似乎有attribute_info
,ConstantValue
等Synthetic
。
我怎样才能区分他们的类型?
我知道了。
constant_pool
上的attribute_name_index
条目必须是代表属性名称的CONSTANT_Utf8_info
结构(§4.4.7)。