Руководство по actionscript. часть 1, стр. 104

Public class В extends А { public function n ( ) { trace(«Method n( ) was called»);

}

}

Теперь экземпляры класса В могут использовать все методы и переменные не только класса В, но и его суперкласса А:

var blnstance = new В( );

// Вызов унаследованного метода, определенного в классе А blnstance. m( ); // Выводит: Method m( ) was called // Вызов метода, определенного в классе В blnstance. п( ); // Выводит: Method n( ) was called // Обращение к унаследованной переменной trace(blnstance. v); // Выводит: 10

В данном случае говорят, что класс В специализирует класс А. Класс В использует возможности класса А в качестве своей основы, добавляя свои собственные возможности или даже — как мы увидим далее — перекрывая возможности класса А измененными для собственных нужд версиями. Таким образом, в отношении наследования между двумя классами расширяемый класс (в нашем случае А) называется базовым, а расширяющий класс (в нашем случае В) — производным. Иногда для обозначения базового и производного классов также используются понятия «предок» и «потомок» соответственно.

Наследование может (а зачастую так и происходит) включать больше чем два класса. Например, даже несмотря на то, что класс В унаследован от класса А, класс В может стать базовым для другого класса. Следующий код демонстрирует третий класс С, который расширяет класс В, а также определяет новый метод о ( ). Класс С может использовать все методы и переменные, определенные в нем самом и во всех его предках, то есть в его суперклассе (В) и суперклассе суперкласса (А).

public class С extends В { public function о ( ) { trace(«Method o( ) was called»);

}

}

// Использование:

var clnstance = new C( );

// Вызов метода, унаследованного от класса А

clnstance. m( ); // Выводит: Method m( ) was called

// Вызов метода, унаследованного от класса В

clnstance. п( ); // Выводит: Method n( ) was called

// Вызов метода, определенного в классе С

clnstance. о( ); // Выводит: Method о( ) was called

// Обращение к переменной, унаследованной от класса А.

trace(clnstance. v); // Выводит: 10

Более того, каждый суперкласс может иметь любое количество подклассов (однако у суперкласса нет никакой возможности узнать, какие подклассы расширяют его возможности). Следующий код добавляет в наш пример четвертый класс D. Как и В, класс D наследуется непосредственно от А. Класс D может использовать методы и переменные, определенные в нем самом и в его суперклассе А.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Оставить комментарий

Вы должны авторизоваться для отправки комментария.

Полезные ссылки
Случайные записи
  • 25.02.2011">Руководство по actionscript. часть 6, стр. 092
  • 12.03.2011">Руководство по actionscript. часть 3, стр. 120
  • 16.03.2011">Руководство по actionscript. часть 3, стр. 026
  • 21.03.2011">Руководство по actionscript. часть 2, стр. 036
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.14
  • 28.02.2011">Руководство по actionscript. часть 6, стр. 011
  • 12.03.2011">Руководство по actionscript. часть 3, стр. 127
  • 22.07.2011">Шторы – элегантное украшение родного дома
  • 24.02.2011">Руководство по actionscript. часть 7, стр. 010
  • 26.02.2011">Руководство по actionscript. часть 6, стр. 059
  • 18.03.2011">Руководство по actionscript. часть 2, стр. 136
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 112
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 139
  • 03.03.2011">Руководство по actionscript. часть 5, стр. 056
  • 11.03.2011">Руководство по actionscript. часть 4, стр. 011
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...