В 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();