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

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

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

Про final - Android

05.01.2013, 05:57. Просмотров 535. Ответов 4
Метки нет (Все метки)

Сразу скажу читал в книгах по яве про final все ясно было.

А вот сейчас появился вопрос.

Ключевое слово final позволяет предотвратить изменение переменной, сделав ее по сути константой, также используется для предотвращения переопределения и наследования.

Так вот, я пишу таймер:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class MainActivity extends Activity {
    
    TextView text4;
    int i=3;
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
      
       TextView text = (TextView) findViewById(R.id.textView1);
       
            Timer timer = new Timer();
            timer.schedule(new TimerTask() {
 
                @Override
                public void run() {
                    MainActivity.this.runOnUiThread(new Runnable() {
                        public void run() {
                                 i++;
                                 text.setText(""+i);
                             }
                    });
                }
            }, 0, 5000);
 
    }
}
Так вот таймер не будет работать пока я к этой строчке (TextView text = (TextView) findViewById(R.id.textView1) не добавлю final. Хотя к переменной int i добавлять никакой final не надо.

О наследовании или переопределении здесь речи нет, тогда (как я думаю) final в строке final TextView text = (TextView) findViewById(R.id.textView1); должен по идеи запретить изменять text??? Или я неправ??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2013, 05:57     Про final
Посмотрите здесь:

Про Handler и ProgressBar Android
Объясните про поля класса Android
Снова про распознавание речи Android
Android Информация про ОС Android
Android Снова про установку шрифта
Android Объясните про параметры ProgressBar
Android Про Broadcast
Про DPI экранов Android
Про архитектуру приложения Android
Android Нечто про Андройд и С++
Поясните про поддержку разных экранов Android
Android Про активити и линию

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
V0v1k
1157 / 981 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
05.01.2013, 06:14     Про final #2
запрещает переопределить переменную text
Klafe
1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 101
05.01.2013, 06:17  [ТС]     Про final #3
Цитата Сообщение от V0v1k Посмотреть сообщение
запрещает переопределить переменную text
А это обязательное условие (запрещать)? Если я и так не переопределяю?
V0v1k
1157 / 981 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
05.01.2013, 06:18     Про final #4
как видишь...
Klafe
1 / 1 / 0
Регистрация: 13.10.2012
Сообщений: 101
05.01.2013, 06:21  [ТС]     Про final #5
Ясно, понял. Спасибо!
Yandex
Объявления
05.01.2013, 06:21     Про final
Ответ Создать тему
Опции темы

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