Объекты и классы

В ActionScript 3.0 каждый объект определяется классом. Класс можно рассматривать как шаблон или проект типа объекта. Определения класса могут включать переменные и константы, которые содержат значения данных и методов, являющихся функциями, содержащими поведение, связанное с этим классом. Значения, хранимые в свойствах, могут быть примитивными значениями или другими объектами. Примитивные значения — это числа, строки или логические значения.

ActionScript содержит ряд встроенных классов, являющихся частью языка ядра. Некоторые из этих встроенных классов, например Number, Boolean и String, отражают примитивные значения, доступные в ActionScript. Другие же, такие как классы Array, Math и XML, определяют более сложные объекты.

Все классы, независимо от того, являются ли они встроенными или определяемыми пользователем, выводятся из класса Object. Программистам, имеющим опыт работы с предыдущей версией ActionScript, важно обратить внимание на то, что тип данных Object больше не является типом данных по умолчанию, даже несмотря на то, что все другие классы являются его производными. В ActionScript 2.0 следующие две строки программного кода были эквивалентны, поскольку отсутствие аннотации типа означало, что переменная будет иметь тип Object.

var someObj:Object; 
var someObj;

В ActionScript 3.0 вводится концепция переменных без объявления типа, которые можно назначать следующими двумя способами.

var someObj:*; 
var someObj;

Переменная без объявления типа отличается от переменной с типом Object. Основным отличием является то, что переменные без объявления типа могут содержать специальное значение undefined , в то время как переменные с типом Object не могут содержать такое значение.

Можно определить свои собственные классы, используя ключевое слово class . Свойства класса можно объявить тремя способами: константы могут быть определены с помощью ключевого слова const , переменные определяются с помощью ключевого слова var , а свойства getter и setter определяются с использованием атрибутов get и set в объявлении метода. Методы можно объявлять с помощью ключевого слова function .

Экземпляр класса создается с помощью оператора new . В следующем примере создается экземпляр класса Date с названием myBirthday .

var myBirthday:Date = new Date();