Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Severomor1
0 / 0 / 0
Регистрация: 09.01.2014
Сообщений: 36
#1

Время жизни static объекта - Android

12.02.2014, 13:15. Просмотров 655. Ответов 2
Метки нет (Все метки)

Приветствую,
Что то я запутался с проклятым static, помогите.
Дано:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class Main extends Activity{
 
public static ListArray<N> list;
 
protected void onCreate(){
readListFromFile(list,"myfile");
...
}
}
 
public class MyService extends Service{
 
чтоТоПериодическиДелатьСоСписком(Main.list);
}
Запускаю activity, что то там делаю со списком, стартую service, закрываю activity. Activity onDestroy() сработал. Service работает. Вопрос: в какой момент Main.list перестанет существовать?
Переформулирую вопрос с практической точки зрения: когда надо сбросить list в файл, в каком методе? )
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2014, 13:15     Время жизни static объекта
Посмотрите здесь:

Сериализация объекта в файл Android
Android Определение объекта
Android Получить значение non-static переменной из другого класса
Сделать копию static объекта Android
Static поле у внутреннего класса Android
Android Объявление static без имени
Android Static MediaPlayer
Android Время жизни переменной в Application
BroadcastReceiver + static переменная Android
Android Singleton или класс с полями static?
Android Как вызвать postInvalidate() из static метода?
Где хранятся static переменные метода в java Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
YuraAAA
1564 / 1306 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
12.02.2014, 17:31     Время жизни static объекта #2
Severomor1, static инициализируется, когда ClassLoader загрузит класс впервые.
onDestroy вызывается при закрытии активити, но это не означает, что процесс умирает.
Статика живёт, пока живёт процесс. И, если я не ошибаюсь, пока класслоадер не выгрузит класс, статика будет живой.

Чтобы ответить на вопрос,
Цитата Сообщение от Severomor1 Посмотреть сообщение
когда надо сбросить list в файл
надо понять Вашу логику. Что там хранится, как обновляется и зачем оно вообще нужно.
vxg
Модератор
3021 / 1823 / 189
Регистрация: 13.01.2012
Сообщений: 6,910
19.02.2015, 14:30     Время жизни static объекта #3
Цитата Сообщение от YuraAAA Посмотреть сообщение
Статика живёт, пока живёт процесс
возможно ли что статика будет убита не смотря на то что приложение работает? изредка получаю странные java.lang.NullPointerException в тех местах где идет обращение из одной активности к статике в другой активности
Yandex
Объявления
19.02.2015, 14:30     Время жизни static объекта
Ответ Создать тему
Опции темы

Текущее время: 10:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru