Могу ли я использовать статические методы для повышения производительности для часто используемых методов - PullRequest
2 голосов
/ 25 декабря 2010

У меня есть несколько методов, которые позволяют мне искать некоторые идентификаторы, поэтому, по сути, они запускают запрос SQL и возвращают значение.

В настоящее время они не являются статичными.Имеет ли смысл делать их статичными с точки зрения производительности, т.е. иметь меньше памяти и экономить время, необходимое для создания объекта?Или эти соображения не очень важны.

Ответы [ 2 ]

8 голосов
/ 25 декабря 2010

Нет существенной разницы в практике, так или иначе.Это особенно верно в вашем случае, поскольку запросы SQL будут занимать гораздо больше времени, чем вызов метода java.

Что касается использования памяти, то, сделав метод статическим, вы получите 0 байт памяти, это абсолютно точно.

7 голосов
/ 25 декабря 2010

Причина использования статического метода - если вы считаете, что он улучшает ясность.

Педантизм, использование статического может получить 8 байт памяти (одна ссылка). Значение этой памяти составляет около 10000 тысяч цента.Использование статического вызова экономит до 1 нс, запрос SQL может занять 10 мс, поэтому разница составляет 10 000 000 и более раз.

В 99% случаев использование статического сэкономит вам меньше, чем затратынеобходимость набирать слово (т.е. значение вашего времени для ввода слова на намного больше, чем память / обработка, которую вы сэкономите). Используйте static, если вы считаете, что это делает программу более понятной.например, для написания служебных методов.

...