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

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

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

Регистрация: Sep 2009
Сообщений: 130
По умолчанию Сколько может быть конструкторов и вызов конструктора из потомка

1. Сколько может быть конструкторов?
2. В конструкторе потомка автоматически не вызывается конструктор родителя?

Старый 09.10.2009, 15:41
Gaen вне форума Посмотреть профиль Отправить личное сообщение для Gaen Найти все сообщения от Gaen
  № 2  
Ответить с цитированием
Gaen
strange mood
 
Аватар для Gaen

модератор форума
Регистрация: Jul 2004
Адрес: Питер
Сообщений: 1,653
Записей в блоге: 1
Отправить сообщение для Gaen с помощью ICQ Отправить сообщение для Gaen с помощью Skype™
1. Для каждого класса конструктор только один
2. Конструктор суперкласса автоматически вызывается перед конструктором потомка. Его можно вызвать явно через super(), если нужно, чтобы он отработал не перед конструктором потомка, а внутри него. Можно прописать явный вызов при неосуществимом условии, и тогда конструктор суперкласса не вызовется.
__________________
тонкий тролль, осеянный благодатью

Старый 09.10.2009, 22:04
TommyLee вне форума Посмотреть профиль Отправить личное сообщение для TommyLee Найти все сообщения от TommyLee
  № 3  
Ответить с цитированием
TommyLee

Регистрация: Sep 2009
Сообщений: 130
GAIKER, спасибо.
отработка конструктора родителя перед конструктором потомка или внутри него - есть ли разница?


Последний раз редактировалось TommyLee; 09.10.2009 в 22:07.
Старый 09.10.2009, 22:17
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 4  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Да, если вы присвоите значение переменной суперкласса в конструкторе потомка до того, как будет вызван конструктор суперкласса, то, если конструктор суперкласса тоже задает значение этой переменной, то после выполнения обоих конструкторов у переменной будет занчение заданое в суперклассе.
__________________
Hell is the possibility of sanity

Старый 09.10.2009, 22:39
TommyLee вне форума Посмотреть профиль Отправить личное сообщение для TommyLee Найти все сообщения от TommyLee
  № 5  
Ответить с цитированием
TommyLee

Регистрация: Sep 2009
Сообщений: 130
wvxvw, т.е. перезапись значения? Правильно ли это? Может лучше всегда переменные делать private, чтобы только через конструктор суперкласса изменять значения суперкласса?

Старый 09.10.2009, 23:54
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 6  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Не знаю, я не вижу в этом ничего плохого. Иногда наоборот, лучше, скажем, сначала в наследнике задать какие-то значения, а потом выполнить конструктор родителя в котором эти значения будут использованы. Пример: конструктор родителя рисует прямоугольник длины Х и ширины У. Задаем эти значения в наследнике и получаем прямоугольник с нужными наследнику шириной и высотой.
__________________
Hell is the possibility of sanity

Старый 10.10.2009, 00:37
BlooDHounD вне форума Посмотреть профиль Отправить личное сообщение для BlooDHounD Посетить домашнюю страницу BlooDHounD Найти все сообщения от BlooDHounD
  № 7  
Ответить с цитированием
BlooDHounD
стервочка (я мужик)
 
Аватар для BlooDHounD

блогер
Регистрация: Mar 2004
Адрес: Борисов
Сообщений: 3,161
Записей в блоге: 22
Цитата:
Сообщение от wvxvw
Да, если вы присвоите значение переменной суперкласса в конструкторе потомка до того, как будет вызван конструктор суперкласса
а такое давно стало возможным?

Старый 10.10.2009, 00:44
r_r_f_r вне форума Посмотреть профиль Отправить личное сообщение для r_r_f_r Найти все сообщения от r_r_f_r
  № 8  
Ответить с цитированием
r_r_f_r

Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
Цитата:
Сообщение от BlooDHounD Посмотреть сообщение
а такое давно стало возможным?
Давно))

Старый 10.10.2009, 15:05
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от BlooDHounD Посмотреть сообщение
а такое давно стало возможным?
Возможно, но не всегда. Ещё они this не пишут

Старый 10.10.2009, 18:59
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 10  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,600
Записей в блоге: 17
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Не знаю, я не вижу в этом ничего плохого. Иногда наоборот, лучше, скажем, сначала в наследнике задать какие-то значения, а потом выполнить конструктор родителя в котором эти значения будут использованы. Пример: конструктор родителя рисует прямоугольник длины Х и ширины У. Задаем эти значения в наследнике и получаем прямоугольник с нужными наследнику шириной и высотой.
У меня одного флекс сдк4 ругается на то, что super должен вызываться в начале конструктора потомка?

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

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

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


 


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


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