Суббота, 18.05.2024, 06:55
Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Вход на сайт
Поиск
Календарь
«  Январь 2015  »
ПнВтСрЧтПтСбВс
   1234
567891011
12131415161718
19202122232425
262728293031

Главная » 2015 » Январь » 24 » Методы-конструкторы в подклассах в ActionScript
20:04
Методы-конструкторы в подклассах в ActionScript

Метод-конструктор инициализирует экземпляры класса такими способами:

  • вызывая методы, которые выполняют задачи настройки;
  • присваивая значения переменным созданного объекта.

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

  • выполнять задачи настройки, относящиеся к подклассу;
  • присваивать значения переменным, описанным в подклассе;
  • вызывать метод-конструктор подкласса (суперконструктор).

Если в подклассе определен метод-конструктор, в нем обязательно должен вызываться конструктор суперкласса с помощью ключевого слова super. Конструктор суперкласса должен вызываться до обращения к любой переменной или методу экземпляра. Если конструктор суперкласса не будет вызван явно, компилятор автоматически добавит вызов конструктора суперкласса без аргументов. Ключевое слово super не должно использоваться в методе-конструкторе более одного раза.

Запрещение использования ключевого слова super после того, как произошло обращение к любой переменной или методу экземпляра, имеет следующие преимущества:

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

Существует две разновидности оператора super:

  • первая разновидность super() вызывает метод-конструктор суперкласса;
  • вторая разновидность super.имяМетода() вызывает метод суперкласса.

Использование первой разновидности допустимо только в методе-конструкторе. Вторая разновидность может многократно применяться в любом месте метода-конструктора или метода экземпляра.

Если в подклассе метод-конструктор не определен вообще, то компилятор автоматически создаст метод-конструктор и добавит в него одну инструкцию – вызов оператора super.

Категория: ActionScript | Просмотров: 385 | Добавил: alex | Рейтинг: 0.0/0
Всего комментариев: 0