对象的访问定位
使用对象时Java程序通过栈上的reference数据来操作堆上的对象实例。
对象访问方式主要有句柄和直接指针两种。
-
句柄方式:
reference中存储的是对象的句柄地址,在句柄中存储着对象的实例数据和类型数据的具体地址。
这种方式的好处是:reference中存储的稳定的句柄地址,在对象被移动时只会改变句柄中的对象地址而不会改变reference。
-
直接指针方式:
reference中存储的是对象的具体地址。
好处是速度快,因为节省了一次指针定位的时间开销