Руководство по actionscript. часть 1, стр. 128
^ I Обратите внимание на важное различие между отдельно взятым классом и типом данных, м? J „ представляемым этим классом. Набором значений, принадлежащим данному классу, являют— Щ1 ся только экземпляры этого класса. Однако набором значений, принадлежащим типу данных этого класса, являются экземпляры данного класса и экземпляры его классов-потомков.
Подобно тому как каждый класс формирует тип данных, каждый интерфейс также формирует тип данных. Набором значений типа данных интерфейса являются все экземпляры любого класса, реализующего этот интерфейс, а также все экземпляры любого класса, унаследованного от класса, реализующего данный интерфейс. Мы еще не рассматривали интерфейсы, поэтому отложим разговор об их использовании в качестве типа данных до гл. 9.
Если у нас есть два типа данных — А и В, причем класс (или интерфейс), представленный типом данных В, унаследован от класса (или интерфейса), представленного типом данных А, то А называется супертипом для В. И наоборот, тип данных В называется подтипом А. Например, тип данных Food является супертипом для Apple, в то время как Apple является подтипом Food.