Desempenho e otimização do método Access

Muitas vezes, me deparo com código onde o Getter método @ é usado / abusado repetidamente para obter algum valor ou passá-lo como um parâmetro do método, por exemplo:

public class Test {
   public void someMethod() {
      if(person.getName() != null && person.getName().equalsIgnoreCase("Einstein")) {
           method1(person.getName());
      }
      method2(person.getName());
      method3(person.getName());
      method4(person.getName());
   }
}

Geralmente codifico, como abaixo:

public class Test {
   public void someMethod() {
      String name = person.getName();
      if(name != null && name.equalsIgnoreCase("Einstein")) {
           method1(name);
      }
      method2(name);
      method3(name);
      method4(name);
   }

Na minha opinião, há uma vantagem considerável de memória / desempenho ao atribuir o getter a uma variável e usá-lo, pois os Getters são métodos Java e usam frames de pilha. Existe realmente uma vantagem considerável na codificação dessa maneira? }

questionAnswers(12)

yourAnswerToTheQuestion