| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Как получить доступ к перем-ой из actionPerformed |
| Автор: freshAngel 21.7.2009, 16:00 | ||||
| Привет. Проблема заключается в следующем. Файл Main.java:
Файл: tray.java
Не получается обратиться к переменной frame из actionPerfomed. |
| Автор: jeank 21.7.2009, 16:03 |
| А не должен ли быть frame - final? |
| Автор: freshAngel 21.7.2009, 16:10 | ||
Должен наверное По крайней мере подсказка в NetBeans тоже что - то про final пишет. Только вот вопрос! Для чего нужен final!? Почему так не работает!? Добавлено Да, с параметром final все заработало. Спасибо! Только зачем он нужен и почему без него не работает!? |
| Автор: jeank 21.7.2009, 16:20 |
| ну все очень просто - когда ссылка объявляется как финал, это значит, что один раз указав ей на объект нельзя потом вторично указать на другой объект. Т.е. она как бы "прилипает" намертво к объекту, хотя сам объект может меняться как пожелает программист. Т.о. образом обходят плохие ситуации, когда в листенере используется ссылка, которая в процессе может ссылаться на разные объекты. |
| Автор: freshAngel 21.7.2009, 17:20 |
| Как познавательно! Я знал что спецификатор final может использоваться для обозначения констант и отмены наследования, но про "прилипание" не знал. Спасибо большое! Просветили! |