Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 03.03.2010, 12:11
phelix_tc вне форума Посмотреть профиль Отправить личное сообщение для phelix_tc Найти все сообщения от phelix_tc
  № 1  
Ответить с цитированием
phelix_tc

Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
По умолчанию Четыре типа переменных

Доброго времени суток уважаемые.
Сейчас вкуриваю К. Мук "ActionScript 3.0 для Flash". И у него встречается следующее:
Код:
Существует четыре типа переменных: локальные переменные, переменные  
экземпляра, динамические переменные экземпляра и статические переменные.
Что-то туго мне в голову лезет эта информация. Объясните плз про все 4 вида переменных, желательно кратко аналогом из жизни, т.е.:
локальная переменная: левая нога - потому что нога, потому что растет с левой стороны туловища Ну как-то так.

Старый 03.03.2010, 12:27
r_r_f_r вне форума Посмотреть профиль Отправить личное сообщение для r_r_f_r Найти все сообщения от r_r_f_r
  № 2  
Ответить с цитированием
r_r_f_r

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
Экземпляр - человек

Локальная переменная - произносимый звук(создается во время открывания рта и существует только в это время, его может кто-то запомнить, но это уже не к нашему объекту относится)

Переменные экземпляра - левая нога, правая нога, всё что есть у всех людей при создании, но оно различно.

Динамические переменные экземпляра - неожиданно появившаяся третья нога, человек не рассчитывал при создании, что родители надумают её прикрутить.

Статические переменные - интернет(все о нём знают, он один, но не всем религия позволяет им пользоваться)

Старый 03.03.2010, 12:42
phelix_tc вне форума Посмотреть профиль Отправить личное сообщение для phelix_tc Найти все сообщения от phelix_tc
  № 3  
Ответить с цитированием
phelix_tc

Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
Так, что-то назревает в мозгу.
Т.е. это будет так:
Локальная переменная появляется когда что-то происходит, но как только это что-то перестала происходить, то и она исчезает. Переменная экземпляра присутствует всегда, вне зависимости от происходящего. Динамическая переменная появляется когда что-то происходит, но остается когда это что-то перестало происходить. Статистическая переменная может присутствовать всегда, а может и не присутствовать.
Так?

Старый 03.03.2010, 13:05
r_r_f_r вне форума Посмотреть профиль Отправить личное сообщение для r_r_f_r Найти все сообщения от r_r_f_r
  № 4  
Ответить с цитированием
r_r_f_r

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
Да, так, но вами перечисленные "законы" необходимы, но недостаточны.

Локальная - создаётся в функции, и существует только во время её выполнения.
Экземпляра - создаётся вместе с созданием экземпляра, и существует вместе с ним и относится к экземпляру.
Динамическая - создаётся в любой момент времени каким-то другим экземпляром в нашем экземпляре.
Статическая - одна для всех экземпляров данного класса, создаётся либо при обращении к ней через Класс.ПЕРЕМЕННАЯ, либо же при инициализации экземпляра этого класса(что быстрей, то и проинициализирует).

Нужно смотреть на примерах, на словах это сложно понять.

Старый 03.03.2010, 13:18
CrazyFlasher вне форума Посмотреть профиль Отправить личное сообщение для CrazyFlasher Найти все сообщения от CrazyFlasher
  № 5  
Ответить с цитированием
CrazyFlasher
 
Аватар для CrazyFlasher

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,181
Код AS3:
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;
		}
 
	}
 
}
__________________
Flash Developer
Папа TDP4 Team Battle


Последний раз редактировалось CrazyFlasher; 03.03.2010 в 13:23.
Старый 03.03.2010, 13:20
phelix_tc вне форума Посмотреть профиль Отправить личное сообщение для phelix_tc Найти все сообщения от phelix_tc
  № 6  
Ответить с цитированием
phelix_tc

Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
В принципе, я понял, теперь надо на практике отработать. Спасибо.
Примеры из жизни для меня как-то лучше доходят
Крэйзи. спасибо за пример. Вкуриваю.

Старый 03.03.2010, 21:35
cleptoman вне форума Посмотреть профиль Отправить личное сообщение для cleptoman Найти все сообщения от cleptoman
  № 7  
Ответить с цитированием
cleptoman
 
Аватар для cleptoman

блогер
Регистрация: Mar 2007
Сообщений: 1,291
Записей в блоге: 5
Отправить сообщение для cleptoman с помощью ICQ
если почитаете дальше, то ,думаю, в книге все это разжовывается
__________________
http://cleptoman.free-lance.ru
achivements: дважды благословлен на воровство. осеяный благодатью

Старый 03.03.2010, 22:36
phelix_tc вне форума Посмотреть профиль Отправить личное сообщение для phelix_tc Найти все сообщения от phelix_tc
  № 8  
Ответить с цитированием
phelix_tc

Регистрация: Mar 2010
Адрес: Казань
Сообщений: 9
Врятли настолько сильно разжевывается как в приведенных примерах уважаемых r_r_f_r и CrazyFlasher.
К тому же в книге 990+ страниц, т.ч. лучше я постараюсь сейчас непонятное для себя прояснить, чем прочитать книгу и ничего не понять

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:03.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:03.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.