黑马程序员技术交流社区

标题: 哪位大神能说一下对象和引用的区别 [打印本页]

作者: lrd7512369    时间: 2015-3-22 10:58
标题: 哪位大神能说一下对象和引用的区别
为什么有了对象还要创建一个指向该对象的引用呢?是为了更方便的操作这个对象吗?
作者: 张耀东    时间: 2015-3-22 11:05
引用是指向对象所在地址。没有引用就找不到对象,那么对象就是垃圾。
作者: daveyang    时间: 2015-3-22 12:16
对象产生在堆内存中,而你的对象名字在栈内存中,引用是为了把他们两个关联起来。如果没有引用,就没办法操作,而不是不方便
作者: 陈捷旋    时间: 2015-3-22 12:32
内存不一样
作者: 傻大憨粗萌    时间: 2015-3-22 12:48
个人见解,创建对象时,内存中的过程是这样的:首先栈内存会开辟一个空间来存储对象名称,堆内存会分配一个地址给你新创建的对象,此时的栈内存和堆内存还没有任何关联关系。然后一旦将堆内存中的这个地址赋给栈内存中的变量,这是就完成了引用。引用的实质就是让成员能够顺利的通过堆内存中的地址找到你所创建的对象。
作者: 猴子1888    时间: 2015-3-22 12:58
你可以这么理解,如果你想访问或调用对象,但是语法不支持你在此调用对象,你该怎么办?Java中用引用来解决了这个问题,你可以间接的去访问和调用对象。引用其实就是通过对象的内存的地址去访问和调用对象,而没有直接的用对象名字去调用和访问。希望我的回答能帮助你,谢谢!请给技术分~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2