- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Java class文件格式之数据类型(二)
1 / 10 Java class 文件格式之数据类型(二) 常量池中各数据项类型详解(续) (8) CONSTANT_Class_info 常量池中的一个 CONSTANT_Class_info, 可以看做是 CONSTANT_Class 数据类型的一个实例。 他是对类或者接口 的符号引用。 它描述的可以是当前类型的信息, 也可以描述对当前类的引用, 还可以描述对其他类的引用。 也就是说, 如 果访问了一个类字段, 或者调用了一个类的方法, 对这些字段或方法的符号引用, 必须包含它们所在的类型的信 息, CONSTANT_Class_info 就是对字段或方法符号引用中类型信息的描述。 CONSTANT_Class_info 的第一个字节是 tag, 值为 7, 也就是说, 当虚拟机访问到一个常量池中的数据项, 如果 发现它的 tag 值为 7, 就可以判断这是一个 CONSTANT_Class_info 。 tag 下面的两个字节是一个叫做 name_index 的索 引值, 它指向一个 CONSTANT_Utf8_info, 这个 CONSTANT_Utf8_info 中存储了 CONSTANT_Class_info 要描述的类 型的全限定名。 此外要说明的是, java 中数组变量也是对象, 那么数组也就有相应的类型, 并且数组的类型也是使用 CONSTANT_Class_info 描述的, 并且数组类型和普通类型的描述有些区别。 普通类型的 CONSTANT_Class_info 中存储 的是全限定名, 而数组类型对应的 CONSTANT_Class_info 中存储的是数组类型相对应的描述符字符串。 举例说明: 与 Object 类型对应的 CONSTANT_Class_info 中存储的是: java/lang/Object 与 Object[]类型对应的 CONSTANT_Class_info 中存储的是: [Ljava/lang/Object; 下面看 CONSTANT_Class_info 的存储布局: 2 / 10 例如, 如果在一个类中引用了 System 这个类, 那么就会在这个类的常量池中出现以下信息: (9) CONSTANT_Fieldref_info 常量池中的一个 CONSTANT_Fieldref_info, 可以看做是 CONSTANT_Field 数据类型的一个实例。 该数据项表示对 一个字段的符号引用, 可以是对本类中的字段的符号引用, 也可以是对其他类中的字段的符号引用, 可以是对成员变量字 段的符号引用, 也可以是对静态变量的符号引用, 其中 ref 三个字母就是 reference 的简写。 之前的文章中, “符号引用” 这个名词出现了很多次, 可能有的同学一直不是很明白, 等介绍完 CONSTANT_Fieldref_info, 就可以很清晰的了解什么 是符号引用。 下面分析 CONSTANT_Fieldref_info 中的内容都存放了什么信息。 和其他类型的常量池数据项一样, 它的第一个字节也必然是 tag, 它的 tag 值为 9 。 也就是说, 当虚拟机访问到一 个 常 量 池 中 的 一 项 数 据 , 如 果 发 现 这 个 数 据 的 tag 值 为 9 , 就 可 以 确 定 这 个 被 访 问 的 数 据 项 是 一 个 CONSTANT_Fieldref_info, 并且知道这个数据项表示对一个字段的符号引用。 tag 值下面的两个字节是一个叫做 class_index 的索引值, 它指向一个 CONSTANT_Class_info 数据项, 这个数据项 表示被引用的字段所在的类型, 包括接口。 所以说, CONSTANT_Class_info 可以作为字段符号引用的一部分。 class_index 以 下 的 两 个 字 节 是 一 个 叫 做 name_and_type_index 的 索 引 , 它 指 向 一 个 CONSTANT_NameAndType_info 。 这个 CONSTANT_NameAndType_info 描述的是被引用的字段的名称和描述符。 我 们在前面的博客中也提到过, CONSTANT_NameAndType_info 可以作为字段符号引用的一部分。 到此, 我们可以说, CONSTANT_Fieldref_info 就是对一个字段的符号引用, 这个符号引用包括两部分, 一部分是 该字段所在的类, 另一部分是该字段的字段名和描述符。 这就是所谓的 “对字段的符号引用” 。 下面
您可能关注的文档
- ingerconnect Working Group.pdf
- Innate immune recognition of viral infection Kawai-2006-.pdf
- Innate immune recognition of bacterial ligands by NAIPs dictates inflammasome specificity.pdf
- Inorg.Chem.2005,44,3907-3913.pdf
- Innovative method for assessment of underground sewer pipe condition.pdf
- inquiry客户询盘.pdf
- Innovation_competencies.pdf
- Insect-inspired, actively compliant hexapod capable of object manipulation.pdf
- Infrared spectra and density functional theory calculations of the tantalum and niobium carbonyl din.pdf
- INPHO MATCH-T_DSM中文操作手册.pdf
有哪些信誉好的足球投注网站
文档评论(0)