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

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

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

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
ок, поехали.
Цитата:
var pet = new VirtualPet создавался в конструкторе VirtualPet, то у нас был бы только один объект ?
Здесь будет бесконечная рекурсия, потому что объект VirtualPet начнет бесконечно порождать себе подобных.
Цитата:
Этим я хотел показать, что у нас в конструкторе VirtualZoo создаются три объекта
...
var pet = new VirtualPet("Stan", "Vlad", "Lena");
...
Три объекта - три имени.
А в результате объект создасться один.
Код AS3:
     this.petName = name1;
     this.petName = name2;
     this.petName = name3;
первые 2 здесь явно лишние, они не несут никакой пользы, потому что в конечном итоге this.petName станет равен name3.


Последний раз редактировалось i.o.; 27.11.2010 в 21:26.
Старый 27.11.2010, 21:14
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 12  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Цитата:
Этим я хотел показать, что у нас в конструкторе VirtualZoo создаются три объекта
Этим вы хотели запутать всех и себя еще больше, ибо по коду ясно видно, что имя дается одному объекту три раза и все три раза разное.
__________________
тут я

Старый 27.11.2010, 21:15
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 13  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
goldlider, вы лучше напишите, чего добиваетесь, а мы вам покажем как это надо сделать

Старый 27.11.2010, 22:05
goldlider вне форума Посмотреть профиль Отправить личное сообщение для goldlider Найти все сообщения от goldlider
  № 14  
Ответить с цитированием
goldlider

Регистрация: Jun 2010
Сообщений: 120
Вопрос то собственно был ещё описан в посте number one. Но по ходу возникли и другие вопросы связанные с кол-ом создаваемых объектов в конструкторе. Но с этим как-нибудь разберусь, т.к. только начал Мука читать до указанной выше страницы. Может быть ещё не все узнал про это.
Но вот этот вопрос давно терзает. Не указав this и написав так petName = name. Что бы изменилось ? Я понял что this указывает на текущий объект. Но у нас и так один объект. Объясните на примере по-простому плиззз.

Старый 27.11.2010, 22:10
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 15  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
http://www.flasher.ru/forum/showthread.php?t=146740
А вообще, у Мука есть раздел, посвященный этому.
__________________
тут я

Старый 28.11.2010, 12:28
goldlider вне форума Посмотреть профиль Отправить личное сообщение для goldlider Найти все сообщения от goldlider
  № 16  
Ответить с цитированием
goldlider

Регистрация: Jun 2010
Сообщений: 120
КорДум: Честно говоря не понял про this. Не могли вы объясните пошагово на примере, как действуют this в методе-конструкторе. Поясню пример: создается 3 объекта и каждому дается имя.

Код AS3:
this.petName = name1;
this.petName = name2;
this.petName = name3;

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

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

Старый 28.11.2010, 12:57
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 18  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
goldlider, вам уже дали ответ
В совокупности с
Код AS3:
package zoo {
	internal class VirtualPet {
		internal var petName;
 		public function VirtualPet (name) {
			this.petName = name;
		}
	}
}
У вас есть все что нужно.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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