对象的引用和对象本身各是什么意思啊?
比如定义一对象:
ArrayList myAL=new ArrayList();
myAL是一个对象,引用它又是么意思呢?
------解决方案--------------------ArrayList myAL=new ArrayList();
myAL是一个对象,引用它又是么意思呢?
回复:
myAL本身不是对象,而是对对象的引用。对象在内存中被创建,JAVA中只能通过使用对象变量(myAL)来引用内存中的对象。[实际上(myAL)是一个指向内存的指针。建议看看Delphi或者C++]
------解决方案--------------------new ArrayList()生成了ArrayList()对象,
而ArrayList myAL=new ArrayList();有两个意思
1、生成ArrayList()对象
2、把ArrayList()对象的引用付给myAL
ArrayList myNextAL=myAL;
this statement没有生成新的对象,只是又把myAL付给myNextAL,这两个引用都指向同一个ArrayList对象
------解决方案--------------------ArrayList myAL=new ArrayList();
myAL是一个对象,引用它又是么意思呢?
对象本身存储在堆内存中,new ArrayList();实现创建对象,而myAL是对象引用。
关系类似箱子和钥匙,对象是箱子,引用是钥匙