2013-03-13 6 views
5

Я читал, что вы можете иметь только один класс по пакету в ActionScript. Если вам нужны вспомогательные классы, вы выписываете эти классы из пакета. Пример:несколько классов в пакете ActionScript?

package { 
    public class A {} 
} 


class B {} 

Однако, я нашел следующий пример на веб-сайте Adobe (: http://help.adobe.com/en_US/ActionScript/3.0_ProgrammingAS3/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f9e.html):

package flash.xml 
{ 
    class XMLDocument {} 
    class XMLNode {} 
    class XMLSocket {} 
} 

В следующем веб-странице (http://www.adobe.com/devnet/actionscript/learning/as3-fundamentals/packages.html), они сказали, что вы можете только писать один класс пакета с помощью файла:

// SampleCode.as file 
package samples{ 
    public class SampleCode {} 
} 

// CodeFormatter.as file 
package samples { 
    class CodeFormatter {} 
} 

Тогда мой вывод: вы не можете написать несколько классов пакета с помощью файла, не так ли ?. И это ограничение заключается в том, чтобы продвигать хорошие практики в AS3, не так ли?

Извините, если этот вопрос слишком прост.

ответ

9

Конечно, вы можете иметь несколько классов в одном пакете

файл MyPackage/MyClass1.as:

package mypackage { 
    public class MyClass1{ 

    } 
} 

файл MyPackage/MyClass2.as:

package mypackage { 
    public class MyClass2{ 

    } 
} 

Но вы можете 't имеет более одного открытого класса для каждого файла (который должен иметь то же имя, что и класс).

Вы можете иметь вспомогательные классы вне блока пакетов (в том же файле), они доступны только другими классами внутри этого файла:

файл MyPackage/MyClass3.as:

package mypackage { 
    public class MyClass3{ 

    } 
} 

class HelperForClass3Only() {} 
0

Здесь может быть некоторая полезная информация на http://www.adobe.com/devnet/actionscript/learning/as3-fundamentals/packages.html:

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

Смежные вопросы