为什么说Java中的引用变量以对象的形式存在,引用变量只是保存对象的句柄?

来源:百度知道 编辑:UC知道 时间:2024/09/21 20:59:51

Java中的引用变量相当于C语言中的指针,它的作用是指向某个对象.比如

Child t;

t=new Child();

t 是 一个引用变量,指向了一个Child类型的对象.内存中,你首先声明了一个Child类型的引用变量,然后你创建了一个Child对象,并 把这个对象在堆内存中的地址赋给t,这个地址就是引用变量的值,t是引用变量的名.

由于Java中无法直接使用具体的对象,因此都是通过对象的引用来操作对象的.有的书上,把引用变量也称为对象句柄.好比你要用勺喝汤,而引用变量或对象句柄就是勺的把手,通过它来实现属于勺这个对象的喝汤的方法.

最后,引用变量以对象的形式存在,引用变量只是保存对象的句柄?

前半句的意思是引用变量是指向对象的

后半句的意思是引用变量保存了对象在堆内存中的存储地址,引用变量也被称为对象句柄

记住这个就行了
对象的内存地址是连续的。引用变量只是保存对象的首地址。