![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
freedomSTUDENT
这个作者很懒,什么都没留下…
展开
-
【JVM】类的生命周期
类的初始化阶段是类的加载过程的最后一个阶段,在这个阶段,JVM 会执行类初始化方法()。在类的使用阶段,对象可以调用其方法,并使用其属性。在加载阶段,类加载器首先会通过一个类的全限定名来获取定义此类的二进制字节流。最后,在java堆中生成一个代表这个类的 java.lang.Class 对象,作为方法区中这些数据的访问接口。全限定名是指一个 java 类的完全限定名,例如,对于类 java.lang.String , 其限定名就是。类的连接阶段是类加载过程的第二个阶段,包括 验证,准备,和解析三个阶段。原创 2024-01-13 17:40:32 · 512 阅读 · 0 评论 -
【JVM】字节码文件的组成
魔数是一个用于校验字节码文件是否有效的标识,位于文件开头的前四个字节,魔数之后是次版本号和主版本号,共同构成了字节码文件的版本号。常量池是字节码文件中的一个结构,包含了该类的所有常量,如数字,字符串,符号常量等。包含了该类的所有方法,每个方法都有访问标志,名称,描述符和字节码指令序列。分别指向该类的全限定名,父类的全限定名 和该类实现的接口列表。包含了该类的所有字段,每个字段都有访问标志,名称,描述符和值。包含了该类或接口的所有属性,如源文件名,行号表,本地变量表。用于描述该类或接口的访问权限和属性。原创 2024-01-12 14:56:37 · 484 阅读 · 0 评论 -
【JVM】java 虚拟机的组成
负责将编译后 java 类文件加载到 java 虚拟机中,并生成对应的class 对象。java虚拟机在运行的时会将内存划分为不同的区域,包括方法区,堆,虚拟机栈,本地方法栈,负责执行java 程序的字节码指令,执行引擎有两种实现方式:解释执行和即时编译。6.虚拟机栈(Java Virtual Machine Stack)用于存储方法的局部变量,操作数栈,动态连接,方法出口等信息。7.本地方法栈(Native Method Stack)用于存储类的结构信息,包括类的字段,方法,常量池。原创 2024-01-11 16:03:27 · 376 阅读 · 0 评论 -
【JVM】初识 Jvm
JVM 的全程是( java 虚拟机 )JVM 是一种用于计算设备的规范,也是一个虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功能实现,JVM 屏蔽了与具体操作系统平台相关的信息,使 java 程序只需生成在 java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改的运行。JVM 在执行字节码时,实际上最终还是把字节码解释成具体平台上的机器指令去执行。原创 2024-01-11 15:40:51 · 597 阅读 · 0 评论