Вот пример статического метода, который используется в веб-приложении. Как видите, String[] allergensArr создается каждый раз, когда вызывается этот метод. Он потокобезопасен, так как находится в статическом методе, но это дорогостоящий вызов.
Каковы другие способы использования allergensArr[] , чтобы он не создавался каждый раз при вызове метода.
Я рассматривал следующие варианты.
- Иметь статический конструктор, который инициализирует статическую конечную строку []
- Используйте синглтон (хотя это заблокирует многих людей)
Это будет постоянный массив, который не изменится в течение времени существования экземпляра сервера.
public class UserHealthConcernsManager {
public static String[] getAllergensFlag () {
String[] allergensArr = new String[12];
allergensArr[0] = "x";
allergensArr[1] = "y";
allergensArr[2] = "w";
_SNIP_
return allergensArr;
}
}