关于动态类
摘自: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)
{
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) 编辑 收藏 举报