Производительность Android статической переменной или свойства - PullRequest
3 голосов
/ 03 февраля 2012

Привет, я хочу знать, что лучше с точки зрения производительности для использования статических значений в Android.

1- Создать открытую статическую переменную в классе

public static boolean _loadConfiguration = true;

или

2 - Создать общедоступное статическое свойство get / set в классе

private static boolean _loadConfiguration = true;

public static boolean LoadConfiguration() {
    return _loadConfiguration;
}

public static void LoadConfiguration(boolean loadConfiguration) {
    _loadConfiguration = loadConfiguration;
}

Ответы [ 2 ]

3 голосов
/ 03 февраля 2012

Чтение Android: проектирование для повышения производительности , это отличная статья.

Короче говоря, они протестировали систему с помощью Caliper и пришли к выводу, что вы избегаете внутренних добытчиков / сеттеров :

"Без JIT прямой доступ к полю примерно на в 3 раза быстрее , чем при вызове тривиального геттера. С JIT (где прямой доступ к полю обходится дешевле, чем доступ к локальному), прямой доступ к полю составляет около в 7 раз быстрее , чем при вызове тривиального геттера. Это верно для Froyo, но улучшится в будущем, когда JIT встроит методы геттера. "

0 голосов
/ 03 февраля 2012

статические переменные не нуждаются в get / set.Вы всегда можете получить их, используя className.staticVariable.get / set для static всегда накладные расходы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...