关于动态类

摘自:http://blog.163.com/rj_syx@126/blog/static/4392037720092525650676/

        这也算是AS特有的东西吧?
        一般来说,属性和方法都应该在类中定义好,而不能在类定义之外添加。但AS中却可以——只要在类定义时将该类定义成“动态类”即可(也就是在class关键字之前加上dynamic)。
        例如:
        dynamic class Ball    //类定义
        {

        private var radius:Number;
        function Ball(r:Number)
        {
        radius=r;
        }

        }
        在使用Ball类的fla文件中:
        var myBall:Ball=new Ball(5);
        myBall.x=200;        //在类定义之外增加了一个x属性!
        动态类对于AS有着很重要的意义,许多内置类都是动态的。比如影片剪辑MovieClip类,如果它不是动态类,那么用户就不能在影片剪辑的时间轴上增加变量和函数啦!
        有意思的动态类,不过一般用户编写AS时,基本上用不着吧,再说它还会导致维护上的困难呢。

posted on 2011-01-04 09:06  songqiuming  阅读(236)  评论(0编辑  收藏  举报

导航