Описание класса ActionScript

 


Для создания нового класса используется описание класса, как показано в  

следующем обобщенном коде: 

class Идентификатор { 

Описание класса начинается с ключевого слова class, за которым указывается имя 

класса (в приведенном коде имя класса заменено выражением Идентифика тор). Термин 

«идентификатор» употребляется в значении «имя». Идентификаторы не должны 

содержать пробелы или тире и не могут начинаться с цифры. Каждое новое слово в имени класса принято записывать с прописной буквы, как, например, в именах  

классов Date или Text Field (TextField — это предопределенный класс среды  

выполнения Flash, экземпляры которого представляют текст, отображаемый на экране). 

Фигурные скобки ({ и }), следующие за выражением Идентификатор в предыдущем 

описании класса, являются оператором блока, точно так же, как и в примере  

описания пакета. Оператор блока описания класса называется блоком класса или иногда 

телом класса. Блок класса содержит директивы, описывающие характеристики 

и поведение класса и его экземпляров. 

В следующем примере приводится описание класса VirtualZoo, являющегося 

основным классом для нашей игры-симулятора. Описание класса помещено в тело 

пакета, который описан в файле VirtualZoo. as: 

package zoo { 

class VirtualZoo { 

Поскольку описание класса VirtualZoo находится в пакете zoo, полным  

именем класса (называемым полностью определенным именем класса) является 

zoo. VirtualZoo. Тем не менее в тексте мы будем использовать сокращенное, 

или неполное, имя класса — VirtualZoo. 

Теперь, когда мы описали основной класс нашей программы, создадим еще один 

класс — VirtualPet. С его помощью мы создадим объекты, представляющие  

зверей в зоопарке. 

Как и в случае с классом VirtualZoo, мы поместим код класса VirtualPet 

в пакет zoo, сохранив его в собственном файле Virtual Pet. as внутри папки zoo. 

Исходный код из файла VirtualPet. as выглядит следующим образом: 

package zoo { 

class VirtualPet { 

Обратите внимание, что описание пакета может размещаться в нескольких  

исходных файлах. И хотя классы VirtualZoo и VirtualPet физически хранятся 

в разных AS-файлах, они принадлежат одному пакету zoo. Любой класс, описание 

которого принадлежит телу пакета с именем zoo, считается частью этого  

пакета независимо от имени файла размещения. В отличие же от описания пакета, 

описание класса не может находиться в нескольких файлах и должно полностью 

размещаться в одном файле. 

Модификаторы управления доступом для классов. По умолчанию обращение 

к классу, входящему в состав определенного пакета, может осуществляться только 

из кода, принадлежащего тому же пакету. Чтобы класс был доступен для  

использования за пределами пакета, которому он принадлежит, мы должны описать этот 

класс с помощью атрибута public. Вообще говоря, атрибуты определяют  

порядок использования класса и его экземпляров в программе. Атрибуты указываются 

перед ключевым словом class в описании класса, как показано в приведенном 

ниже общем примере: атрибут class ИдентификаторКласса { 

Например, чтобы добавить атрибут public к классу VirtualPet, нужно  

использовать следующий код: 

package zoo { 

public class VirtualPet { 

Однако применение атрибута public в случае с классом VirtualPet  

необязательно, поскольку класс VirtualPet используется только классом VirtualZoo, 

а тот, в свою очередь, может обращаться к классу VirtualPet (классы,  

принадлежащие одному пакету, могут всегда обращаться друг к другу). Таким образом, мы 

можем вернуться к исходному описанию класса VirtualPet, которое косвенным 

образом позволяет использовать этот класс только внутри пакета zoo: 

package zoo { 

class VirtualPet { 

Если мы хотим явно указать, что класс VirtualPet может быть использован 

только внутри пакета zoo, то в описание класса необходимо добавить атрибут 

internal, как показано ниже: 

package zoo { 

internal class VirtualPet { 

Класс, описанный с помощью атрибута internal, может быть использован только 

внутри пакета, которому он принадлежит. Другим словами, описание класса с  

помощью атрибута internal совершенно не отличается от описания класса без  

использования каких-либо модификаторов управления доступом. Атрибут internal 

просто служит для однозначного толкования замысла программиста. 

Атрибуты internal и publ ic называются модификаторами управления доступом, 

поскольку управляют порядком доступа к областям внутри программы, в которых 

допускается использовать данный класс (к ним разрешен доступ данного класса). 

В отличие от класса VirtualPet, класс VirtualZoo должен быть определен с  

помощью атрибута public, поскольку он является основным классом приложения. 

Следующий код представляет обновленное описание класса VirtualZoo,  
содержащее обязательный атрибут public: 
package zoo { 
public class VirtualZoo { 




BACK NEXT

Сайт является частным собранием материалов и представляет собой любительский информационно-образовательный ресурс. Вся информация получена из открытых источников. Администрация не претендует на авторство использованных материалов. Все права принадлежат их правообладателям