
25.10.2013, 23:11
|
|
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Ладно, попробую раскрыть трюк.
Просто Вы воспринимаете слово "конструктор" слишком буквально. Вы думаете что пока не выполнится весь код в функции, объект еще не создан.
Это не так. Прикол в том, что код в конструкторе вообще-то ничего не создает касательно объекта.
Все, что касается "состава" объекта как экземпляра класса, написано в теле класса. В конструкторе Вы можете что-то инициализировать из переменных (стоп, а откуда взялись переменные, если мы не писали в конструкторе "var... "? АГА! Так понятно?), запустить какие-то функции (стоп, а какие же функции экземпляра, если экземпляр то еще не создан? Объявленные в теле класса, АГА!)
Так что на момент выполнения кода в конструкторе объект уже полностью создан и выполняет только "первоначальную настройку".
После которой new его возвращает.
Можно рассматривать конструктор как одну из функций в теле класса (чем он и является), автоматически выполняемую сразу после создания объекта. Всё.
|