在我看到flash.utils package中的方法后,我决定尝试一下:
// inside file Test.as
package com.tests
{
internal function packageFunction() {
}
}
但我得到了:
在源路径中找到的文件 'Test'必须具有相同的名称 作为里面的类定义 文件 'packageFunction'。
packageFunction是一个函数,而不是一个类..任何想法有什么问题?
- 更新
对于那些不知道我正在谈论的“包函数”的人,请参阅flash.util package方法。我可以像以下一样使用它:
flash.utils.getTimer();
答案 0 :(得分:2)
您的代码位于Test.as中。它应该在
中COM /测试/ packageFunction.as
这遵循与“普通”类相同的规则。包和主公共符号名称必须是目录路径和文件名。
答案 1 :(得分:0)
如果你的代码在Test.as类中,你已经在一个包中,你不能在包内或包外有另一个包,你可以做的是在包外面有另一个类
package com.tests
{
public class Test
{
private var example:ClassExample = new ClassExample();
}
}
//This class is only accessible in the Test class
class ClassExample
{
public function ClassExample()
{
}
}
您给出的示例是对包的使用的误解。文档中描述的函数可以在任何包中访问,但这并不意味着您可以在现有类中创建包来访问这些函数。