OnDestroy() - установить или не установить переменные экземпляра в null?

Является ли хорошей идеей специально установить переменные экземпляра в null в обратном вызове onDestroy() активности? Что-то вроде этого:

    @Override
protected void onDestroy() {
    super.onDestroy();
    mClassVariable1 = null;
    mClassVariable2 = null;
    mClassVariable3 = null;
}

Если я правильно помню из Java SE, любые ссылки, которые изолированы и не связаны с запущенной программой и могут быть собраны в любом случае. Это делает лишний лишний?

С другой стороны, жизненный цикл в мобильных устройствах различен, будет ли вышеперечисленное лучше всего практиковать?

Я знаю, что это не помешает сделать это, но иногда есть ряд переменных класса (ссылки на индивидуализированные элементы пользовательского интерфейса и т.д.), поэтому я действительно хотел бы узнать свое понимание, что действительно происходит.

Спасибо заранее!

Ответ 1

У вас было все правильно, когда вы сказали, что сборщик мусора соберет ссылки, которые изолированы. В частности, будет собран любой график ссылок, не связанных с потоком выполнения. Из-за этого нет веских оснований для того, чтобы установить переменные в нуль, которые я вижу. Любые преимущества будут значительно перевешиваться стоимостью обслуживания кода.