首页   快速返回

java对象访问方式     所属分类 java
引用 reference

Java虚拟机规范  reference  是一个指向对象的引用
但没有定义这个引用应该通过何种方式定位、访问堆中的对象,对象访问方式取决于虚拟机的具体实现

主流的访问方式有两种
句柄访问 直接指针访问

句柄访问
Java堆中划分出一块内存作为句柄池,reference中存储对象的句柄地址,句柄中包含了对象实例数据与类型数据的具体地址信息。

使用句柄访问的优点
reference中存储的是稳定的句柄地址,在对象被移动(GC时复制移动存活对象)时只会改变句柄中的实例数据指针,而reference本身不需要修改。


直接指针访问

java堆对象的布局中考虑如何放置访问类型数据的相关信息,而reference中存储对象地址。

使用直接指针访问方式优点
速度快,节省了一次指针定位的时间开销

HotSpot虚拟机采用直接指针访问

上一篇     下一篇
判断文件是否是符号链接

maven clean package install deploy区别

jar冲突处理

btrace使用简介

为什么开发一个操作系统那么难

AQS同步队列与条件队列