什么是对象引用?JAVA

Python014

什么是对象引用?JAVA,第1张

对象是真实存在的,存放于堆中;而引用是一种指向对象的虚拟的指针,指向对象,存在于堆栈中。

例如:

A

a

=

new

A()

在这里

a是一个引用,而生成的对象

new

A()则是真实存在的对象。

new

Object()

就会把这个对象。放到堆里面去。你想成一个空间就好了。

然后

Object

obj

=

new

Object()

这里的new

Object()

相当于赋值给了

obj..就是让obj去引用你new的对象。。可以想象成一条线连接到那个空间里面放着的相应的对象。

这里obj称为引用变量。

大概就是这样。。我是这样想的。。

new KKK()创造了一个对象,类型是KKK。

而KKK a则创造了一个可以存储KKK类型对象引用的“引用存储器”。

而等号=则把new KKK()这个对象的引用存到了a之中,这样你就可以用a来使用这个对象数据和方法了。

再举个例子,

String a=new String("asdf")//这里把"asdf"代表的对象的引用存到了a中

a=new String("fdsa")//这里又把另一个对象"fdsa"存到了a中,所以a就不是指向原来的"asdf"了,而是"fdsa"了

System.out.println(a)//这里输出的结果如我们预料的一样,是"fdsa"