Global.as假设我在一般文件中有一个变量,如下所示:
public static const test:String = "testString";
在另一个文件中,我想覆盖该变量。可能像下面这样:
在File1.as:
override var test:String = "testStringUpdated";
当然这是行不通的。有谁知道如何做到这一点?
它实际上是否可能override并且override应该像这样使用?还是仅用于覆盖功能?
提前致谢。
Global.as假设我在一般文件中有一个变量,如下所示:
public static const test:String = "testString";
在另一个文件中,我想覆盖该变量。可能像下面这样:
在File1.as:
override var test:String = "testStringUpdated";
当然这是行不通的。有谁知道如何做到这一点?
它实际上是否可能override并且override应该像这样使用?还是仅用于覆盖功能?
提前致谢。
通常,您不会“覆盖”变量;只需在子类中更改它们的值(构造函数是一个很好的地方)。
public function File1()
{
test = "testStringUpdated";
}
至于字面上的覆盖,您可以覆盖 setter 和 getter。
只需在基类中将变量设置为 setter/getter 组合,例如:
class Base
{
private var _test:String = "testString";
public function get test():String
{
return _test;
}
public function set test(value:String):void
{
_test = value;
}
}
然后在您的子类(File1)中,您可以更改获取值的test方式,例如:
class File1 extends Base
{
override public function get test():String
{
return super.test + "Updated"; // testStringUpdated
}
}