java,使用new创建对象,并将该对象的引用返回...对象依然存在,不会被垃圾回收,是什么意思啊?

"我们在方法内部使用new创建对象,并将该对象的引用返回。如果该返回被一个引用接收,由于对象的引用不为0,对象依然存在,不会被垃圾回收。"... "我们在方法内部使用new创建对象,并将该对象的引用返回。如果该返回被一个引用接收,由于对象的引用不为0,对象依然存在,不会被垃圾回收。" 展开
 我来答
顺眼又肃穆灬榜眼S
推荐于2017-11-27
知道答主
回答量:15
采纳率:0%
帮助的人:9.8万
展开全部
User u = new User();

如上面代码,简单说就是new User()的时候,会返回一个地址,并且将地址赋值给引用u,当这个引用被u持有的时候,java会认为这个对象时有用的,不会回收对象,如果你之后执行了好比说:

u = null;
//或
u = new User();

这样的代码,那么这个u就不在持有之前对象的地址了,变成了空或者新的地址,这个时候如果没有其他引用持有了之前对象的地址,之前的对象就没有访问方法了,那么gc(垃圾回收器)运行的时候会认为这个对象没用了,将他从内存中释放掉。

百度网友5dc0f24
2015-05-21 · 超过18用户采纳过TA的回答
知道答主
回答量:96
采纳率:0%
帮助的人:39.8万
展开全部
就是它还会存在内存里占用内存,因为别的地方用到它了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式