Производительность и оптимизация метода доступа

Часто я сталкиваюсь с кодом, в котором метод Getter многократно используется / используется для получения некоторого значения или передачи его в качестве параметра метода, например:

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());
   }
}

Я обычно закодируйте его, как показано ниже:

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

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

8
задан bchetty 9 December 2015 в 14:55
поделиться