Цитата:
Сообщение от fish_r
В первом приведенном вами примере вы обращаетесь к Майн до конца инициализации, а он в это время ещё равен null, то есть его фактически не существует. Инициализация объекта заканчивается тогда когда выполнится конструктор,и методы указанные в конструкторе ( а если в нем указана инициализация нижележащих объектов то и их конструкторы и методы указанные в них ). После этого можно обратиться уже к Майн, как к объекту.
|
однако небольшой эксперимент показывает, что это не так

Код AS3:
package
{
import flash.display.Sprite;
public class Main extends Sprite
{
public function Main():void
{
var timeScale:TimeScale = new TimeScale(this);
}
public function tracer():void
{
trace( "Main.tracer" );
}
}
}
import flash.display.Sprite;
class TimeScale extends Sprite
{
public function TimeScale(main:Main)
{
graphics.beginFill(0xC0C0C0);
graphics.drawRect(0, 0, 50, 50);
main.addChild(this);
main.tracer(); //Main.tracer
}
}
в чем проблема у ТС не очень понятно
(ну не считая того, что так конечно не стоит делать)