我是靠谱客的博主 无聊万宝路,最近开发中收集的这篇文章主要介绍JAVA虚拟机(JVM)详细介绍(四)——类文件结构,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

讲完了自动内存管理,我们来说说执行子系统。执行子系统讲解的是JVM如何执行程序。

20190619144251184.png

Class文件概述

这篇我们只讲讲Class文件。Class文件又名类文件或字节码文件。javac将.java文件(源代码)编译成.class文件(字节码),jvm再将.class文件解释成机器码。

20190619144410727.png

Class文件中包含的是Java虚拟机指令集和符号表以及若干其它辅助信息。其是一组以8字节为基础单元的二进制流,没有空隙存在。

20190619145121941.jpg

其存储数据的结构有两种:无符号数和表。

(1)无符号数是用来描述数字,索引引用,数量值或按照UTF-8编码构成字符串值。属于基本的数据类型,以u1,u2,u4,u8分别代表1个字节,2个字节,4个字节,8个字节

(2)表是由多个无符号数或其它表作为数据项构成的复合数据类型,以“_info”结尾。

其特点是:在Class文件中,哪个字节代表什么含义,长度是多少,先后顺序如何,都不允许改变。

Class文件组成部分

20190619145257218.png对于Class的组成,在上图中已经罗列的很清楚了。还需再对常量池进行一下强调:当虚拟机运行时,需要从常量池获得对应的符号引用,再在类创建时或运行时解析、翻译到具体的内存地址之中。

以上便是为大家整理的关于JAVA虚拟机中class文件部分,更多相关问题请访问PHP中文网:JAVA视频教程

以上就是JAVA虚拟机(JVM)详细介绍(四)——类文件结构的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是无聊万宝路为你收集整理的JAVA虚拟机(JVM)详细介绍(四)——类文件结构的全部内容,希望文章能够帮你解决JAVA虚拟机(JVM)详细介绍(四)——类文件结构所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部