Типы данных и аннотации типов ActionScript 

 

 

В языке ActionScript термин «тип данных» означает просто «набор значений». 

Язык ActionScript определяет три фундаментальных типа данных: Null, void 

и Object. Каждый из типов данных Null и void включает по одному  

значению — null и undefined соответственно (значения null и undefined  

рассматриваются далее в разд. «Значения null и undefined»). Тип данных Ob j ect включает 

все экземпляры всех классов. 

Кроме трех фундаментальных типов данных (Null, void и Object), любой  

внутренний или пользовательский класс формирует уникальный тип данных, набором 

значений которого являются непосредственные экземпляры данного класса и  

экземпляры его классов-потомков. Например, класс Food из нашей программы по созданию 

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

все экземпляры класса Food и все экземпляры классов Apple и Sushi (поскольку 

оба класса Apple и Sushi унаследованы от класса Food). Таким образом, говорят, 

что экземпляры классов Apple и Sushi принадлежат типу данных Food. 

Однако каждый из классов Apple и Sushi также формирует собственный тип  

данных. Например, набором значений типа данных Apple являются все экземпляры 

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

образом набором значений типа данных Sushi являются все экземпляры класса 

Sushi и все экземпляры любого класса, унаследованного от него. По этой причине 

помимо того, что экземпляр класса Apple принадлежит типу данных Food, он  

также принадлежит типу данных Apple. Однако экземпляр класса Apple не  

принадлежит типу данных Sushi, поскольку класс S u s h i не унаследован от Арр 1 е. Точно 

так же экземпляр класса Sushi принадлежит типам данных Food и Sushi, но не 

принадлежит типу данных Apple, поскольку класс Sushi не унаследован от Apple. 

Наконец, несмотря на то, что экземпляры обоих классов принадлежат типу данных 

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

или Sushi, поскольку класс Food не унаследован от классов Apple или Sushi. 

Подобно тому как каждый класс формирует тип данных, каждый интерфейс также 
формирует тип данных. Набором значений типа данных интерфейса являются все 
экземпляры любого класса, реализующего этот интерфейс, а также все экземпляры 
любого класса, унаследованного от класса, реализующего данный интерфейс. Мы 
еще не рассматривали интерфейсы, поэтому отложим разговор об их  
использовании в качестве типа данных до гл. 9. 
Если у нас есть два типа данных — А и В, причем класс (или интерфейс),  
представленный типом данных В, унаследован от класса (или интерфейса),  
представленного типом данных А, то А называется супертипом для В. И наоборот, тип данных 
В называется подтипом А. Например, тип данных Food является супертипом для 
Apple, в то время как Apple является подтипом Food. 




BACK NEXT

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