Руководство по 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

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

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

Полезные ссылки
Случайные записи
  • 18.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.70
  • 05.10.2010">Форматы векторной графики
  • 19.08.2013">Android с новыми возможностями на Chuwi V88
  • 23.01.2011">Руководство по actionscript. часть 1, стр. 081
  • 24.02.2011">Руководство по actionscript. часть 6, стр. 111
  • 06.06.2011">Gimp
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.7
  • 18.08.2012">Apple назвала условия урегулирования министерства юстиции несправедливыми
  • 02.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.102
  • 10.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.65
  • 01.03.2011">Руководство по actionscript. часть 5, стр. 124
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.28
  • 03.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.85
  • 04.06.2010">Самоучитель по креативному веб-дизайну. Книга 3, стр.12
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.34
Опрос

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

View Results

Loading ... Loading ...