创建新包并导入但未找到定义

时间:2013-10-28 20:02:37

标签: actionscript-3 flex flash-builder

我创建了一个名为parseLine的简单解析器包。 我把它放在我项目的包中。 在parseLine中,我有一个名为“myParse”的类。 我可以很好地导入它。 import parseLine.myParse。*; 但是当我编译时,我得到一个错误“1172:无法找到定义parseLine.myParse。”。

这是我所知道的非常基础,但我很感激任何能帮助我的人。

1 个答案:

答案 0 :(得分:2)

myParse不是包,它是一个类,因此您输入的方法不正确。

包的基本结构:

src / my / package / name / ClassName

要导入ClassName,您可以使用:

import my.package.name.ClassName;

import my.package.name.*;

ClassName中,必须具有以下设置:

package my.package.name {
    public class ClassName {
        // class code goes here
    }
}

作为附加提示,您应该遵循AS3的标准命名方案。

  • 包名称应全部小写。即使它是多个单词。 my.packagename是正确的,而my.packageName则不是。
  • 类名应为UppercaseCamelcase。因此ClassName是正确的,而classNameclassname不是
  • 所有对象(包括函数)都应为lowercaseCamelcase。因此var someObject是正确的,而var SomeObject则不合适(function doSomething() vs function DoSomething()相同)
  • 常量应为UPPERCASE_UNDERSCORE_SEPARATED。因此const SOME_CONSTANT_VALUE是正确的,而const someConstantValue则不是。

不使用这些规则不会破坏任何内容,但它们是AS3中公认的标准,使您的代码在将来更易于阅读和维护。