Изпратете запитване:
Полетата маркирани със звезда (*) са задължителни за попълване.
Vinaora Nivo SliderVinaora Nivo SliderVinaora Nivo Slider
1 1 1 1 1 1 1 1 1 1 Rating 0.00 (0 Votes)

Понякога е необходимо да се създаде такъв потребителски клас в Actionscript 3, който да ползва всички или повечето свойства (property) и методи (method) на друг, вече съществуващ, клас. В този урок ще създадем клас (class), който показва предварителни (неголеми по размери и средни по качество) фотографии, такива, каквито обикновенно виждаме във виртуалните фотогалерии. Основните свойства на такива предварителни изображения са същите, каквито и в оригиналните файлове: име, място на съхраняване на файла и т. н. Единствената разлика е в размерите на файла. Затова, вместо да създават наново всички детайли, които се съдържат в класа Picture, вие можете да създадете подклас! По такъв начин подкласът Thumbnails наследява всички свойства на класа Picture и ще има свои собствени, такива като неголям размер на файла.

Процесът на създаване на подкласа е известен като разширяване на класа (extend). Вие вземате вече съществуващ клас и го разширявате, добавяйки му нови свойства и методи. Класът, който се разширява се нарича суперклас. И така  - подклас и суперклас, много просто!

По време на създаване на подкласа вие трябва да импортирате (import) в него суперкласа, съпровождайки процеса със запис на пълното име на суперкласа (името на класа и името на пакета, в който се намира). След това в реда с декларацията на подкласа записвате:

  • модификаторът достъп до него
  • ключовата дума class
  • мето на подкласа
  • ключовата дума extends
  • името на суперкласа
  • фигурни скобки

Свойствата и методите на суперкласа стават достъпни чрез метода super(). Ако вие правите разширение на клас, вече вграден в ActionScript, то ще трябва да видите пълното му име или в хелпа на програмата Flash CS6, или в официалната документация на езика ActionScript 3 в Интернет.

Разширяване на клас в Actionscript

Създайте нов файл в AS3 (Създаване на нов ActionScript файл).

Декларирайте пакета, който ще съдържа разширяемия клас. Например:

package gallery{
}

Във фигурните скобки направете запис за импортирането на суперкласа. Например:

import gallery.Picture;
// gallery – име на пакета, Picture – име на суперкласа

Декларирайте подкласа. Например:

public class Thumbnails extends Picture{
}

Във фигурните скобки създайте свойствата (променливите(var)) на този клас. (Задаване свойства на клас в AS3)

Създайте необходимите методи за този подклас (Методи в ActionScript).

Създаване на подклас

Изберете File –> Save As и запазете файла.

Вие създадохте подклас Thumbnails, т.е. разширение на класа Picture.

Допълнителна информация

Макар че е логично да поставяте подкласа в папка при суперкласа, това не е задължително, тъй като вие указвате пълното име на суперкласа (името на пакета и името на суперкласа) по време на указване на импорта. Следователно можете да го разполагате в която папка си пожелаете.

Някои класове, които имат атрибут final не трябва да се разширяват.

final public class MyClass{
}

Към тези класове се отнасят и вградените в ActionScript 3 класове Math, Mouse и др.

В реални flash-филми, когато създавате нов символ на сцената, с това създавате разширение на класа MovieClip или SimpleButton.

Имате въпрос?

Потърсете отговор в нашите
Често Задавани Въпроси
или се свържете с нас

phone 0878 679 639
mail Пишете ни
skype AртСторм