flex:引用类变量

时间:2011-05-03 08:20:43

标签: flex class-design

我在课堂上有一堆变量。在某些情况下,我想将其设置为null /" temp"等等,根据定义明确的逻辑。挑战在于列出多个地方的变量 - 繁琐且容易出错。

classname.speed = NaN的

classname.speedtype =" not_set"

classname.distance = NaN的

classname.distancetype =" not_set"

理想情况下,更喜欢以编程方式引用这些变量并设置类似的方法 "对于所有类变量 - 如果变量以类型结尾,则设置为" not_set&#34 ;;其他变量设置为NaN

我怎样才能做到这一点?任何指针都会有所帮助

2 个答案:

答案 0 :(得分:1)

最简单的方法就是写函数来清除它们 如果你想要更自动化的东西,它将需要努力 - 看看introspection api。基本上,您在类上调用describeType并返回XML描述。所有变量将与其他信息一起列在那里。然后,您可以解析返回的XML并将所有变量设置为所需的值,并使用方括号语法动态访问它们:

var myClass:MyClass = new MyClass();
myClass["varName"] = "new value";

答案 1 :(得分:0)

可以通过继承来实现,即实施 界面扩展 其中包含公共字段

public class MyClass
{
    public a:String = null;
    public b:String = null;

    public function MyClass()
    {
    }

}
包含常见var和Child Class的

可以是

public class MyClassChild extends MyClass
{
    public var c:String = null;
    public function MyClassChild()
    {
        super();
        this.a ="";
        this.b ="";
    }

}

你可以为每个循环强制转换或使用它来设置值

var temp:MyClassChild  = new MyClassChild ();

MyClass(temp).a = "Hello World";

希望有所帮助