Я программист на C ++, вступающий в мир Java. И я не могу избавиться от дурного предчувствия, что я позволяю сборщику мусора Java делать мою очистку.
Как, например, будет ли этот код вести себя в Java?
public void myFunction() {
myObject object = new myObject();
object.doSomething();
}
Будет ли удален объект локальной переменной при выходе из myFunction ()?
Должен ли я установить для объекта значение null перед выходом, или он будет вне области видимости и будет удален GC ? Или, в худшем случае, будет утечка, как в C ++?