webdn
 
  首页     免费截图     VIP会员区     广告Banner     技术文档     网站模板  
网站截图,网站每日新 !
虚拟主机 域名注册


 

AS 2.0 static 关键字

【摘 要】
  本文介绍AS 2.0 static 关键字 。

    static关键字在 ActionScript 2.0 里面也比较重要。如果一个属性是静态的,那么我们可以直接调用……

  static(静态)关键字在 ActionScript 2.0 里面也比较重要。如果一个属性是静态的,那么我们可以直接调用,而不用去使用类的Instance 来调用。大部分属性都是要通过类的 Instance 来操作的,那就意味着,它们不是静态的。

  例子:

// 创建 myClass 的 Instance myInstance
myInstance = new myClass();
// 调用其中一个属性
trace(myInstance.property1);

  如果这个属性 property1 是静态的,那么我们就可以直接这样调用:

// 直接通过主类调用
trace(myClass.property1);

  在 Flash 里面,拥有最多静态属性的类可能就是 Date 了,它所有的属性都是通过直接调用 Date 类获得的。我们可以直接这样:Date.getUTCMinutes(),而不用创建一个新的 Instance ,再通过这个 Instance 去获得需要的属性。可以这样说,静态的属性或者方法只会在主类里面创建一次,而不需要在每一个类成员里面都复制一个。

  我们可以自己创建静态属性或者方法。下面是一个例子:

class Geometry {
  static function getDistance(mc1, mc2) {
  var distance:Number = Math.sqrt((mc1._x - mc2._x)*(mc1._x - mc2._x)+(mc1._y 
  - mc2._y)*(mc1._y - mc2._y));
  return distance;
  }
}

  静态函数 getDistance() 会返回两个 MovieClip 之间的距离。我们可以在其它文件里面这样调用它:

distance_between_2_dots = Geometry.getDistance(dot1, dot2);

  如果您去掉“static”,然后还想像上面的方法一样调用 getDistance(),那么您将得到如下的 AS 2.0 出错信息:

  The property being referenced does not have the static attribute 。



  | 
点击这里给我发消息 | 关于WebDN  |  站点地图  |  联系我们  |  WebDN 会员  |  支付方式  |  友情链接  |  隐私政策
© 2004-2008 WebDN.com 版权所有. 沪ICP备05040479号