2012-07-01 3 views
0

У меня возникли проблемы с созданием нескольких классов AS3, у меня есть класс документа, но я не могу получить другие классы.Использование нескольких классов ActionScript 3

Ниже приведен пример.

~ Main.as

package { 
    import uk.co.epickris.project.*; 

    public class Main { 
     public function Main() { 
      trace('Main constructor.'); 
     } 
    } 
} 

~/ик/ш/epickris/проект/Example.as

package uk.co.epickris.project { 
    public class Example { 
     public function Example() { 
      trace('Example constructor.'); 
     } 
    } 
} 

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

ответ

1

Вам необходимо инициализировать класс Example, создав его экземпляр внутри класса документа.

package 
{ 
    import uk.co.epickris.project.*; 

    public class Main 
    { 
     public function Main() 
     { 
      trace('Main constructor.'); 

      // We're creating an instance of the Example class here. 
      var eg:Example = new Example(); 
     } 
    } 
} 

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

Если для создания экземпляра используется ключевое слово new, конструктор (определяемый созданием функции с тем же именем, что и класс) также вызывается.

Ваш класс документа является единственным классом в вашем случае, который создан, и его конструктор называется автоматически, поскольку это характер класса документа.


Пожалуйста, потратьте немного времени, чтобы прочитать эту статью об основах объектно-ориентированного программирования в AS3: Introduction to OOP

+0

Спасибо, я сделал это, и теперь я получаю сообщение об ошибке. '1180: вызов возможного неопределенного метода. Пример. –

+1

@KristianMatthews Убедитесь, что' Main.as' находится в том же каталоге, что и папка 'uk' (папка, в которой содержатся ваши другие каталоги/классы). – Marty

+0

Папки 'Main.as' и' uk' находятся в папке. –