高强度学习训练第十一天总结:Class文件结构(二)
2024-09-05 01:01:54
常量池
可以理解为Class文件之中的资源仓库,他是Class文件结构中与其他项目关联最多的数据类型,也是占用Class文件空间最大的数据项目之一
访问标志
在常量池结束后,紧接着的俩个字节代表访问标志(access_flags),这个标志用于识别一些类或者接口层次的访问信息。包括:这个Class是类还是接口是否定义为public类型,是否定义为abstract类型等等。
类索引、父类索引与接口索引集合
类索引和父类索引都是一个u2类型的数据,而接口索引集合是一组u2类型的数据集合,Class文件中由着三项数据来确定这个类的继承关系。
字段表集合
字段表用于描述接口或者类中生命的变量。字段包括累级变量,以及实例变量,但不包括在方法内部声明的局域变量。
方法表集合
放发表的结构如同字段表一样,依次包括了访问标志、名称索引、描述符索引、属性表集合迹象。
方法里的Java代码,经过编译器编译成字节码指令后,存放在方法属性表集合中的一个名为“Code”的属性里面,属性表作为Class文件格式中最具扩展性的一种数据项目。
属性表集合
在Class文件、字段表、方法表内都可以携带自己的属性表集合。
字节码指令简介
Java虚拟机的指令有一个字节长度的,代表着某种特定操作含义的数字(称作操作码)以及跟随其后的0至多个代表此操作所需的参数而构成。
小结
Class文件时Java虚拟机执行引擎的数据入口,也是Java技术体系的基础构成之一。
最新文章
- 【poj3270】 Cow Sorting
- 火车头wordpress免费万能发布模块和接口
- servlet、filter、listener、interceptor之间的区别和联系
- 如何修复AppScan漏洞
- python3使用csv模块读写csv文件
- sql server 2008数据复制方法
- Gitolite 构建 Git 服务器
- asp.net mvc中匿名类dynamic
- 编写WCF服务时右击配置文件无“Edit WCF Configuration”(编辑 WCF 配置)远程的解决办法
- FD.io VPP 技术Neutron VNF vRouter 实现
- iOS 之 深复制、浅复制
- 1290 - The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
- opencron
- BeautifulSoup总结
- 将jar包安装到本地repository中
- 自己动手写waf指纹识别
- 在 Linux 上搭建IntelliJ IDEA license server服务器
- Python3中urllib使用介绍
- xxx.app已损坏,打不开.你应该将它移到废纸篓-已解决
- Oracle 11g 异机恢复参考文档