![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
[+1 17.02.10]
Регистрация: Aug 2009
Адрес: Казахстан Усть-Каменогорск
Сообщений: 249
|
Как мне перекинуть значение переменной из 1 Mxml файла в другой ???? есть ли вообще такое во флексе???Заранее спасибо. Да и если есть напишите как иль ссыль кинте. спасибо.
![]() |
|
|||||
|
Регистрация: Sep 2009
Сообщений: 18
|
Например, вот так:
MyCombobox.mxml: <?xml version="1.0" ?> <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script><![CDATA[ public static final var value:Number=1; ]]></mx:Script> <mx:ComboBox> <mx:ArrayCollection> <mx:String>Dog</mx:String> <mx:String>Cat</mx:String> </mx:ArrayCollection> </mx:ComboBox> </mx:VBox> Потом в любом месте приложения: |
|
|||||
|
Modus ponens
|
Во-первых, как правило, глобальные переменные не нужны. Бывают нужны глобальные константы. Это значит, что если вам нужно получить значение свойства какого-то объекта, так и обратитесь к этому объекту.
Во-вторых, нет, в AS3 вообще нет глобальных переменных.
__________________
Hell is the possibility of sanity |
|
|||||
|
[+1 17.02.10]
Регистрация: Aug 2009
Адрес: Казахстан Усть-Каменогорск
Сообщений: 249
|
Цитата:
|
|
|||||
|
Регистрация: Sep 2009
Сообщений: 18
|
Да, точно, прощу прощения. С явой перепутал.
Там и поля класса могут быть final. Просто уберите final и все....P.S. Кстати говоря, а почему в actionScript убрали возможность выставления атрибута final на поле класса? Очень удобно ведь - помечать те переменные, которые нельзя изменять... |
|
|||||
|
Modus ponens
|
А как это у вас сочитается переменная и конечная / постоянная? Переменная - значит, можно изменять, конечная - значит изменять нельзя. Переменная, которую нельзя изменять - это и будет константа
Ну и поэтому переопределять родительские переменные нельзя. А в яве просто другая структура... там поле может в классе-наследнике превратится в сеттер / геттер и наоборот, поэтому там такой функционал нужен, а в АС - вы заранее задаете, что именно создаете, функцию или переменную.lighto: Глобальные константы тоже неьзя создать. Под глобальными константами понимается true, false, "", null, undefined и тому подобные. Максимально похожее, что вы можете сделать, это создать переменную уровня верхнего пакета. Но делать это не рекомендуется. И, как правило, если у вас возникла необходимость сделать что-то похожее, это значит, что вы плохо спланировали приложение.
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Sep 2009
Сообщений: 18
|
Цитата:
У final в яве есть некоторые свойства const в си, например, но это не совсем const Вот в википедии: статья Скажите, пожалуйста, как ActionScript обознаить НЕИЗМЕНЯЕМЫЕ поля класса? Ну чтобы эти поля не мог изменить ни потомок, ни родитель после инициализации этого поля? То есть аналог явы: Последний раз редактировалось Night_rainbow; 23.09.2009 в 17:05. |
|
|||||
|
Modus ponens
|
![]() А таких конечных переменных в АС нету, но можно имитировать если нужно: И это, а разве нельзя в суперклассе: и в наследнике: Я может ошибаюсь, но, помоему можно...
__________________
Hell is the possibility of sanity |
|
|||||
|
Регистрация: Sep 2009
Сообщений: 18
|
Можно, но это ведь не геттер. По спецификации гетером называются методы вида:
В яве нельзя вызвать гетер без (): Вот смотрите: public class Child extends Parent{ public Child(){ integer = 0; //ошибка компиляции } public Integer integer(){ return 0; } public static void main(String[] args){ Parent p = new Parent(); System.out.println(p.integer+""); //1 Child ch = new Child(); System.out.println(ch.integer); //1 System.out.println(ch.integer()); //0 p = ch; System.out.println(p.integer()); //ошибка компиляции System.out.println(p.integer); //1 } } |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:40. |
|
|
« Предыдущая тема | Следующая тема » |
|
|