Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 从另一个类引用文档类中的变量_Actionscript 3 - Fatal编程技术网

Actionscript 3 从另一个类引用文档类中的变量

Actionscript 3 从另一个类引用文档类中的变量,actionscript-3,Actionscript 3,在另一个类中发生事件时,我需要在document类中的函数中增加一个整数变量。我似乎不知道如何调用函数和引用变量 作为3号新手,请帮忙 在文档类中定义变量“test”的简单示例: package { public class DocumentClass extends Sprite { public static var test:Number = 3; public function DocumentClass() {

在另一个类中发生事件时,我需要在document类中的函数中增加一个整数变量。我似乎不知道如何调用函数和引用变量


作为3号新手,请帮忙

在文档类中定义变量“test”的简单示例:

package {   
    public class DocumentClass extends Sprite {
        public static var test:Number = 3;      
        public function DocumentClass() {
            test = 4;
        }            
    }
}
现在在另一个类中访问“test”变量:

package {   
    public class OtherClass extends Sprite {
        public function OtherClass() {          
            DocumentClass.test = 5;
        }
    }
}

这是否适用于您的代码?

需要适当的范围和适当的包装

声明一个静态变量以处理对主文档类的访问

private static var _instance:Main;
public static function get instance():Main { return _instance; }

public function Main() { // constructor
    _instance = this;
}
private var _foo:int = 0;

public function get foo():int{
    return _foo;
}

public function set foo(value:int):void {
    _foo= value;
}
在主文档类中声明一些getter和setter

private static var _instance:Main;
public static function get instance():Main { return _instance; }

public function Main() { // constructor
    _instance = this;
}
private var _foo:int = 0;

public function get foo():int{
    return _foo;
}

public function set foo(value:int):void {
    _foo= value;
}
然后在你需要的任何课程中,你可以改成如下内容

public class O {
    public function O() {
        Main.instance.set(Main.instance.get() + 1);
    }
}

请提供一些示例代码很多关于这个问题的答案都建议使用公共静态属性/方法来访问文档类的成员。问题在于,尽管它允许对DocumentClass的成员进行全局访问,但其中存在潜在的安全问题,它可以进行全局访问。将文档类的引用解析到另一个类可能是一个更好的主意,因此访问权限仅取决于所述类。这又一次引入了“紧耦合”这一新问题。如果我读对了这个问题,事件调度可能是避免单例的一种方法。