读《深入理解Java虚拟机》 栈中的引用类型如何定位到堆中的具体对象呢?这边有两种方式: 1. 直接指针 引用类型中存储的就是对象,对象中存放了类型数据的地址 优点:只需要一次定位,速度快 2. 句柄访问 堆中划分出来一块内存作为句柄池,引用类型中存储的就是对象的句柄地址。句柄中包含了对象的实例数据和类型数据各自的具体地址信息 优点:引用类型中存放的是稳定的句柄地址,在对象被移动,只会改变句柄中的地址。 缺点:耗费内存,需要二次定位