Loading... ```java for(int i=0;i<100;i++){ Object obj = new Object(); } Object obj; for(int i=0;i<100;i++){ obj = new Object(); } ``` 以上分别为在循环里与循环外new对象。 在循环里就相当于为100个引用了100个对象分配内存,直到内存不足会被GC释放。 在循环外使用1个引用分别100次调用了100个对象所以当后一个对象init后,前一个对象已经是“无引用状态”,会很快的被GC自动回收(在你的循环还未结束时,可能已经进行了多次GC回收,这点很重要)。 也就是说第二种方法能更好的管理内存。 Last modification:October 23, 2019 © Allow specification reprint Support Appreciate the author AliPayWeChat Like 0 如果觉得我的文章对你有用,请随意赞赏