Добрый день, хелп, в очередной раз туплю
в классе main пишу

Код AS3:
var createSpace:CreateSpace = new CreateSpace();
addChild( createSpace);
соответственно объект добавиться на сцену, ссылка на stage у него будет, НО
ведь сначала ведь происходит создание нового объекта, а лишь потом добавление на сцену, а так как внутри класса есть слушатели события клавиатуры, пишу в конструкторе класса

Код AS3:
stage.addEventListener(KeyboardEvent.KEY_DOWN, setKeyPressed);
а тут и борода, stage = null, так как произошла только инициализация, но не добавление на сцену
ок, значит пишет в конструкторе перед добавление слушателя

Код AS3:
addEventListener(Event.ADDED_TO_STAGE, init);
итог - та же борода, stage = null
получается тогда два варианта, либо в конструктор передавать ссылку на stage или создать public function, которую вызывать после добавление класса на сцену и в ней объявлять слушателей сцены?
п.с. мне вообще данный класс не нужно добавлять на сцену, нужно добавлять классы, которые в нём создаются и добавляются на сцену, но сути вопроса не меняет, т.к если его не добавить на сцену, он не получит ссылку на stage
п.п.с. что интересно, в этом классе, если создавать другие классы на этапе вызова конструктора, то stage.addChild() не работает, т.к. stage = null, а this работает, но выходит, что this становится ссылкой на сцену, после addChild(createSpace).