获取/设置静态属性的函数

时间:2012-02-07 16:24:07

标签: actionscript-3 static-methods

我一直在学习AS3中的封装,并使用get / set函数来创建(或看起来)只读的变量。我可以使用实例变量,但不能使用静态变量。我发现this,这似乎表明可以在静态属性上使用get / set函数,但编译器一直告诉我我有重复的函数声明。这基本上就是我正在使用的:

package {
    public class Foo {
        protected static var bar:int = 0;

        public static function get bar():int {return bar;}
    }
}

2 个答案:

答案 0 :(得分:5)

你不能创建一个与变量同名的函数(包括gets或sets),否则你将重新启动变量。

package {
    public class Foo {
        protected static var myVar:int = 0;

        public static function get theVar():int {return myVar;}
    }
}

答案 1 :(得分:4)

你可以采用的一个好习惯是调用_bar你将要通过getter和setter修改的“内部”变量,并简单地调用它们吧。

例如:

package {
    public class Foo {
         protected static var _bar:int = 0;

         public static function get bar():int {
               return _bar;
         }
     }
}