|
|
|||||
Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
|
Четыре типа переменных
Доброго времени суток уважаемые.
Сейчас вкуриваю К. Мук "ActionScript 3.0 для Flash". И у него встречается следующее: Существует четыре типа переменных: локальные переменные, переменные экземпляра, динамические переменные экземпляра и статические переменные. локальная переменная: левая нога - потому что нога, потому что растет с левой стороны туловища Ну как-то так. |
|
|||||
Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
|
Экземпляр - человек
Локальная переменная - произносимый звук(создается во время открывания рта и существует только в это время, его может кто-то запомнить, но это уже не к нашему объекту относится) Переменные экземпляра - левая нога, правая нога, всё что есть у всех людей при создании, но оно различно. Динамические переменные экземпляра - неожиданно появившаяся третья нога, человек не рассчитывал при создании, что родители надумают её прикрутить. Статические переменные - интернет(все о нём знают, он один, но не всем религия позволяет им пользоваться) |
|
|||||
Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
|
Так, что-то назревает в мозгу.
Т.е. это будет так: Локальная переменная появляется когда что-то происходит, но как только это что-то перестала происходить, то и она исчезает. Переменная экземпляра присутствует всегда, вне зависимости от происходящего. Динамическая переменная появляется когда что-то происходит, но остается когда это что-то перестало происходить. Статистическая переменная может присутствовать всегда, а может и не присутствовать. Так? |
|
|||||
Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
|
Да, так, но вами перечисленные "законы" необходимы, но недостаточны.
Локальная - создаётся в функции, и существует только во время её выполнения. Экземпляра - создаётся вместе с созданием экземпляра, и существует вместе с ним и относится к экземпляру. Динамическая - создаётся в любой момент времени каким-то другим экземпляром в нашем экземпляре. Статическая - одна для всех экземпляров данного класса, создаётся либо при обращении к ней через Класс.ПЕРЕМЕННАЯ, либо же при инициализации экземпляра этого класса(что быстрей, то и проинициализирует). Нужно смотреть на примерах, на словах это сложно понять. |
|
|||||
Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,181
|
package { /** * ... * @author Anton */ //Если класс динамический (public dynamic class), то переменные можно создавать на лету //(не советую) public class Kot { //статичная переменная, можно обращаться не создавая нового кота (new Kot()), //а просто так Kot.color = 0x000000; public static var color:uint = 0x000000; //переменные экземпляра private var lapa_1:Lapa; private var lapa_2:Lapa; private var lapa_3:Lapa; private var lapa_4:Lapa; private var boshka:Boshka; private var hvost:Hvost; public var jaica:Eggs; //конструктор класса public function Kot() { } //публичный метод public function havat(eda:Food):Shit { //локальная переменная (видна только в теле метода) var kakashki:Shit = new Shit(); return kakashki; } } } Последний раз редактировалось CrazyFlasher; 03.03.2010 в 13:23. |
|
|||||
Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
|
В принципе, я понял, теперь надо на практике отработать. Спасибо.
Примеры из жизни для меня как-то лучше доходят Крэйзи. спасибо за пример. Вкуриваю. |
|
|||||
если почитаете дальше, то ,думаю, в книге все это разжовывается
__________________
http://cleptoman.free-lance.ru achivements: дважды благословлен на воровство. осеяный благодатью |
|
|||||
Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
|
Врятли настолько сильно разжевывается как в приведенных примерах уважаемых r_r_f_r и CrazyFlasher.
К тому же в книге 990+ страниц, т.ч. лучше я постараюсь сейчас непонятное для себя прояснить, чем прочитать книгу и ничего не понять |
Часовой пояс GMT +4, время: 12:48. |
|
« Предыдущая тема | Следующая тема » |
|
|