![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Dec 2013
Сообщений: 35
|
Есть всем известная книга Колина Мука глава 15 страница 339-400 где описан способ который я часто использовал в AS2 но у меня он не работает в AS3. Я что-то не понимаю?
|
|
|||||
|
this обращается к текущему экземпляру, а не к функции.
Такой синтаксис нетипичен для объектно-ориентированного языка. Этот код везде будет работать одинаково. Можно сделать так или так или так Но в AS3 объекты не используются, как объекты, а как нетипизированные ассоциативные массивы. Объекты в AS3 - это экземпляры классов.
__________________
There is no thing in this world that is not simple. |
|
|||||
|
Регистрация: Dec 2013
Сообщений: 35
|
Да это я знаю. Не работает именно сам способ:
Флеш пишет -> 1048: Метод не может использоваться как конструктор. |
|
|||||
|
function определяет объект класса Function, экземпляр уже определённой функции нельзя создать.
Можно создать экземпляр функции вот так, но это не имеет ничего общего с вашими потребностями. В чём логика? Вы объявляете функцию, и пытаетесь создать объект с помощью функции.
__________________
There is no thing in this world that is not simple. Последний раз редактировалось ZackMercury; 14.07.2015 в 09:36. |
|
|||||
|
Регистрация: Dec 2014
Сообщений: 312
|
package { import flash.display.Sprite; import flash.events.Event; public class Main extends Sprite { public function Main() { var worker:Object = new Employee(17); trace(worker.age); } } } // Функция должна быть размещена за пределами package. // У Мука про это написано в самом начале. function Employee(age:Object):Object { this.age = age; return this; } |
|
|||||
|
Регистрация: Dec 2013
Сообщений: 35
|
Спасибо callme. Теперь ясно в каком контексте это имелось ввиду.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 14:30. |
|
|
« Предыдущая тема | Следующая тема » |
|
|