Я очищаю Java-код для того, кто запускает свои функции, объявляя все переменные сверху и инициализируя их как null / 0 / что угодно, вместо того, чтобы объявлять их по мере необходимости позже.
Каковы конкретные рекомендации для этого? Есть ли причины для оптимизации того или иного способа, или это просто хорошая практика? Есть ли случаи, когда допустимо отклоняться от того, как правильно это сделать?