Когда объект подходит для сбора мусора?
В приведенном ниже коде, учитывая, чтоamethod
был вызван. В какой точке / строке находится Объект, на который изначально ссылаетсяmyObject
имеет право на сбор мусора?
class Test {
private Object classObject;
public void amethod() {
Object myObject = new Object();
classObject = myObject;
myObject = null;
}
}
И еслиclassObject
или жеamethod
имел бы модификатор доступа public, protected, default или static, это повлияло бы на то, какой объект подходит для сборки мусора? Если это так, как это повлияет?
classObject = myObject;
будет оптимизирован иmyObject = null;
это точка, которая подходит для сбора мусора.