1.任何 class 都不允许 protected 修饰。
2.在作为 application 的 as 文件中可以定义多个
public/private 类,其他 as 文件中只允许一个 public class
,其他类都只能是 private (internal
的不行),不过相互之间可以存在继承关系,但都不可以相互访问
protected 和 private 方法。
3.不允许嵌套实例 class,只可以嵌套静态
class,不过静态的嵌套类可以访问外层类的 protected 和
private 方法,但嵌套的静态 class 本身却无法被其他
class 继承(即使是 public的静态 class 也不行)。
还有一些代码执行上的小地方:
1.在类中可以不加任何修饰符调用语句,均会被视为静态初始化时调用,比如:
initImage();
private static function initImage():Void{}
是合法的,不过我还是建议写成:
static
{
initImage();
}
private static function initImage():Void{}
这样可以防止以后 as3
支持实例内的方法调用会引起的兼容问题。
2.静态 class
所继承的超类引用都要按文法顺序,比如这样做会引起运行时抱错:
public class PublicClass
{
private static InnerPrivateClass extends PrivateClass
{
}
}
private class PrivateClass
{
}
要写成:
private class PrivateClass
{
}
publicclass PublicClass
{
private static InnerPrivateClass extends PrivateClass
{
}
}