AS3.0 OOP中的数组

mrG*_*ott 0 flash actionscript-3

我试图弄清楚如何在OOP AS3.0中使用数组.一直在寻找答案或一些教程,但无法找到它.也许你可以解释一下.

这就是我所拥有的:

Gallery.as文件:

package  {

    import flash.display.MovieClip;


    public class Gallery extends MovieClip {

        public var can:Number;

        public function Gallery() {


            can = 10;

            var impMyClass:Read = new Read(can);
            trace (impMyClass.myArray[0]);

        }

}

}
Run Code Online (Sandbox Code Playgroud)

这是Read.as文件:

package  {

    import flash.display.MovieClip;


    public class Read extends MovieClip {

        public var rezalt:Number = new Number;
        public var myArray:Array = new Array;

        public function Read(can:Number) {

            rezalt = can * 10 - 50 / 10;
            trace('Read-shi')


        myArray.push('Flash');                      


        }
    }
}   
Run Code Online (Sandbox Code Playgroud)

到目前为止一切正常.

但是当我在Read.as文件中进行一些更改时,如下所示:

package  {

    import flash.display.MovieClip;


    public class Read extends MovieClip {

        public var rezalt:Number = new Number;
        public var myArray:Array = new Array;

        public function Read(can:Number) {

            rezalt = can * 10 - 50 / 10;
            trace('Read-shi')
        }

        public function someFunct():void{

        myArray.push('Flash');                      


        }


    }
}   
Run Code Online (Sandbox Code Playgroud)

一切都崩溃了.我应该如何将myArray的值放入主类文件(Gallery.as)中?

Mat*_*ias 5

您需要在上一版本的Read.as中运行"someFunct"函数,否则将不会填充Array.

    package  {

        import flash.display.MovieClip;


        public class Gallery extends MovieClip {

            public var can:Number;

            public function Gallery() {


                can = 10;

                var impMyClass:Read = new Read(can);
                impMyClass.someFunct();
                trace (impMyClass.myArray[0]);

            }

    }

}
Run Code Online (Sandbox Code Playgroud)