Есть ли снижение производительности для объявления ссылочного типа переменной внутри цикла for?
В этом случае вы создадите новую ссылку, чтобы указать на новый объект. Даже если вы перемещаете ссылку User aUser
из цикла, тогда это приведет к созданию 1000 объектов, но ссылочная переменная не будет создана снова и снова. IMO вы можете перемещать ссылочную переменную, но она не может вызвать большие изменения производительности как таковые. Но когда использовать то, что зависит. IMO, если ссылочная переменная находится вне цикла, она будет указывать на последний созданный объект в цикле, но если он внутри, все ссылки и объекты, на которые они указывают, будут готовы для сбора мусора.
Сохраняет ли в памяти 1000 объектов пользователя за раз?
Да, это может быть до тех пор, пока все они не будут собраны GC, и когда это произойдет, мы никогда не сможем предсказать.
Дать ссылки на ThreadLocalHeap –