深入理解JVM之对象的访问定位

建立对象后,java程序通过栈的reference数据来操作堆上的对象。java虚拟机访问方式有两种:使用句柄,直接指针

1、使用句柄

java堆上划分出一块内存条作为句柄池,reference存储的是对象的句柄地址。句柄中包含对象实例数据,类型数据的地址。

2、直接指针

reference存储的是对象地址

3、总结

句柄访问最大好处就是reference中存储的稳定的句柄地址,有对象的移动时只会改变句柄的实例数据指针,而reference本身不需要修改。

直接指针访问最大好处是速度快,节省了一次定位时间的开销。

Sun HotSpot使用第二种对象访问方式。

发布了59 篇原创文章 · 获赞 2 · 访问量 2076

猜你喜欢

转载自blog.csdn.net/zuodaoyong/article/details/102538794
今日推荐