Java的符号引用和直接引用
来源:互联网 发布:衣服放久了有霉味知乎 编辑:程序博客网 时间:2024/05/22 08:22
类加载过程的解析阶段是虚拟机将常量池内的符号引用替换为直接引用的过程(参考深入理解Java虚拟机第七章),那么,什么是符号引用和直接引用呢?
符号引用(Symbolic References)
符号引用以一组符号来描述所引用的目标,符号可以是任何形式的字面量,只要使用时能无歧义的定位到目标即可。符号引用与虚拟机实现的内存布局无关,引用的目标并不一定已经加载到内存中。各种虚拟机实现的内存布局可以各不相同,但是它们能接受的符号引用必须都是一致的,因为符号引用的字面量形式明确定义在Java虚拟机规范的Class文件中。
直接引用(Direct References)
直接引用可以是直接指向目标的指针、相对偏移量或是一个能间接定位到目标的句柄。直接引用是和虚拟机实现的内存布局相关的,同一个符号引用在不同虚拟机实例上翻译出来的直接引用一般不会相同。如果有了直接引用,那引用的目标必定已经在内存中存在。
阅读全文
0 0
- Java的符号引用和直接引用
- Java中符号引用和直接引用
- JVM的符号引用和直接引用
- 符号引用和直接引用
- 符号引用和直接引用
- 个人理解 java虚拟机中的符号引用和直接引用
- 个人理解 java虚拟机中的符号引用和直接引用
- java虚拟机中的符号引用和直接引用
- 个人理解 java虚拟机中的符号引用和直接引用
- 个人理解 java虚拟机中的符号引用和直接引用
- JVM 解析阶段 符号引用和直接引用的区别
- JVM中的直接引用和符号引用
- JVM中的直接引用和符号引用
- JVM中的直接引用和符号引用
- JVM中的直接引用和符号引用
- JVM中的直接引用和符号引用
- JVM中的直接引用和符号引用
- Jvm中的直接引用和符号引用
- Python2、Python3共存问题
- linux命令大全详解
- Spring @Component
- iOS-程序的启动过程以及相关的注意事项
- docker lnmp liunx+nginx+mysql+php 分离部署
- Java的符号引用和直接引用
- iOS Your account already has a valid ios Distribution certificate
- 这是java的学习历程,以后我也会学到,不知道若干年后,我是如何来回顾自己的。
- C与C++的区别
- eclipse远程调试
- 23 类型的封装(内核里的继承)
- D3,最受欢迎的前端数据可视化库
- linux 磁盘空间管理
- 开始使用git