Возможный дубликат:
Почему статические переменные считаются злыми?
У меня есть привычка широко использовать статические переменные во всех моих программах, особенно когда я работаю с Android. Я склонен использовать их, потому что иногда кажется, что громоздко отправить 10 или более значений с помощью намерений. Таким образом, я просто объявляю их как статические переменные и легко обращаюсь к ним в других классах, используя оператор "точка". Еще одна причина использования статических переменных - это когда я использую класс Утилиты, который будет использоваться во всем приложении. Как и код, приведенный ниже, я могу использовать переменные в разных действиях.
Utility.java
public class Utility {
public static Facebook fb;
public static AsyncFacebookRunner fbAsyncRunner;
public static String[] fbPermissions = {"email", "read_stream", "user_birthday"};
public static final String PREF_UTILITY_FILE_NAME = "PrefUtilityFile";
public static SharedPreferences prefs;
public static Editor editor;
public static String access_token;
public static long expires;
}
Я искал в Интернете похожие вопросы и навел этот и этот, но они, похоже, не дать окончательный ответ на этот вопрос. И в большинстве мест я вижу противоречивые мнения и, следовательно, совершенно смущен.
Является ли это хорошей практикой программирования или плохой? Должен ли я использовать ее или нет?