Классы в ActionScript

Эффективная реклама в блогах и консультации по продвижению в социальных сетях и блогосфере.

ActionScript не имеет возможности объявить класс с помощью специальной инструкции, как, например, в PHP или C++. Но существует особый вид функции - Конструктор. В результат еопределения такой функции фактически происходит созданиешаблона класса.

function Constr(){
ololo
}

Все переменные экзэмпляра создаются внутри конструктора. Кстати, ява-скриптеры! В ActionScript у каждого класса может быть только один конструктор - функции не могут перегружаться!

Перейдем непосредственно к созданию функции конструктора. Создадим Apple(), которая будет создавать пустые объекты пока что.

function Apple(){
}

Чуть позже расскажу как создавать свойства внутри нашего конструктора.

Как создаются объекты с помощью имеющегося класса? Очень просто.

var bigApple = new Apple();

Теперь добавим в наш конструктор класса Apple возможность присваивать значения свойствам объектов, которые он создает.

Для создания свойств нам портебуется ключевое слово this. Внутри функции конструктора this служит ссылкой на создаваемый в данный момент объект.

function Constr(){
this.propName = value;
}

Попробуем применить сказанное выше к нашему примеру с Apple.

function Apple(){
this.radius = 50;
this.color = 0xFF0000;
this.xPosition = 100;
this.yPosition = 120;
}

И теперь, создав новый экзэмпляр Apple:

var bigApple = new Apple();

мы можем обращаться к свойствам bigApple следующим образом:

trace(bigApple.radius); //Выводит 50
trace(bigApple.color); //Выводит в десятичном виде 0xFF0000

Класс, дэ? :)
Только наш конструткор работает пока что с фиксированными величинами (начальный радиус apple, к примеру, равен 50). Поэтому все объекты будут иметь одинаковые начальные значения свойств, а это лишает код гибкости, к которой всегда следует стремиться при программировании. О том, как добавить определенные параметры в конструктор, позволяющие изменять начальные значения, расскажу в следующей статье.
Удачи :)

Спонсор поста:  Лечение зубов в Москве и области.

© 2008 - 2009 Умный мозг | Локализация дизайна | Лента записей (RSS) и Лента комментариев (RSS).