java中for循环new出10个对象,引用是1个还是10个,要大神解答,菜鸟就算了

java中for循环new出10个对象,引用是1个还是10个,要大神解答,菜鸟就算了,第1张

都是一个引用 你把new出来的这些对象放一个List里面 输出List 你就会发现这些对象输出结果和仔都是一样的 后面给对象对象赋的值 会覆盖前面给唤瞎汪对象赋的值神册 说白了就是一个对象 new的十个都指向的是一个地方

正常情况是在内存不够时进行垃圾回收,System.gc()也可以强行进行垃圾回收,建议你别这么做,他会把当前运行的芦备差程序停下来,然后进行垃圾回收,这个过程是很陪皮耗费资源的过程,只会让程序更卡。finalise()方法是该对象被回收前要调用的方法,就是这个对象的遗书了,你直接调用finalise()这个只能把人家遗书读了一遍,但是人家不会这个时候就死的。

System.gc()只回收垃圾对象,就是没有引用的对象。最后建议写程序的时候,尽量不要把太多启动垃圾回收,特别是一般情况下不要自己去手动调用垃圾回收。绝大多数情况下滚羡垃圾回收机制还是可以让人接受的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12500174.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存