建设银行绑定手机号码网站,拖拽式在线网页制作工具,htm5网站建设,vpn网站模板目录 1. 说明2. 形式3. 特点4. 生成过程5. 作用 1. 说明 
1.在Java虚拟机(JVM)中,直接引用(Direct Reference)是相对于符号引用(Symbolic Reference)而言的,它是指向内存中实际存在的… 
 目录
 - 1. 说明
 - 2. 形式
 - 3. 特点
 - 4. 生成过程
 - 5. 作用
 
 
 
 
 
 
  
 
1. 说明
 
- 1.在Java虚拟机(JVM)中,直接引用(Direct Reference)是相对于符号引用(Symbolic Reference)而言的,它是指向内存中实际存在的对象的引用。
 - 2.是指向内存中实际存在的对象的引用,它与虚拟机的内存布局紧密相关,是JVM进行对象访问和操作的基础。
 
 
2. 形式
 
- 1.指针:直接指向目标的指针,例如指向“类型”(Class对象)、类变量、类方法的直接引用可能是指向方法区的指针。
 - 2.相对偏移量:例如指向实例变量、实例方法的直接引用通常是相对于实例对象的起始地址的偏移量。
 
 
3. 特点
 
- 1.内存相关性:直接引用与虚拟机的内存布局紧密相关,不同的虚拟机实现可能会有不同的内存布局,因此同一个符号引用在不同的虚拟机实例上翻译出来的直接引用可能不同。
 - 2.加载性:如果有了直接引用,那么引用的目标必定已经被加载到内存中。这是因为在解析阶段,JVM会将常量池内的符号引用替换为直接引用,而这个过程通常伴随着类加载和初始化。
 
 
4. 生成过程
 
- 1.在JVM的类加载过程中,当类被加载到内存中并初始化后,类中的符号引用会被解析为直接引用。
 - 2.加载:将类的二进制数据读入到JVM中,并创建对应的java.lang.Class对象。
 - 3.链接:包括验证、准备和解析三个阶段。其中,解析阶段就是将常量池中的符号引用替换为直接引用的过程。
 - 4.初始化:为类的静态变量分配内存并设置初始值,执行静态代码块等。
 
 
5. 作用
 
- 1.直接引用使得JVM能够高效地访问和操作内存中的对象。
 - 2.通过直接引用,JVM可以直接访问对象的属性和方法,执行对象的操作等。
 - 3.直接引用是JVM进行垃圾回收的重要依据之一。
 - 4.JVM的垃圾回收器通过遍历对象之间的引用关系,来判断哪些对象是可达的(即被引用的),哪些是不可达的(即未被引用的),从而对不可达的对象进行回收。