Macromedia Flash 5. Объектно - ориентированное программирование

       

This


this - относится к созданному экземпляру, а не к классу, из которого он был создан. А как во Flash? Допустим, у вас есть мувиклип под названием Graphic1 (почему бы нет?), вы использовали его на рабочей площадке дважды и дали экземплярам имена mc0 и mc1. Если вы используете слово this внутри мувиклипа Graphic1, то оно будет обращаться к экземпляру mc0 (если это mc0), и к экземпляру mc1, (если это mc1). Если вы используете trace ( this._x ); в окне мувиклипа Graphic1, то вы отследите _x расположение каждого клипа.

В ActionScript всё работает точно так же. this обращается к текущему экземпляру, а не к классу. Если рассмотреть пример на Flash'е, то:

function Graphic1 ( x, y, name, xScale, yScale, rotation ) { this.x = x; this.y = y; this.name = name; this.xScale = xScale; this.yScale = yScale; this.rotation = rotation; }

instance0 = new Graphic1( 100, 100, "mc0", 100, 100, 45 ); instance1 = new Graphic1( 444, 222, "mc1", 200, 200, 30 );

Как видите, теперь есть два экземпляра, каждый со своими свойствами. Вы можете сопоставить каждый проходящий аргумент с именем каждого аргумента в классе Graphic1 (обратите внимание, что пробелов в именах функций быть не может!). Само по себе это конечно ещё не создаёт мувиклипа. Это просто несколько экземпляров класса в ActionScript, ничего конкретного. Двигаемся дальше, ребята. Поехали!..

 



  • Содержание раздела