快速业务通道

ActionScript3.0教程:变量

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-09

变量

可以使用 varconst 关键字声明变量。在脚本的整个执行过程中,使用 var 关键字声明的变量可多次更改其变量值。使用 const 关键字声明的变量称为常量,只能赋值一次。尝试给已初始化的常量分配新值,将生成错误。

静态变量

静态变量是使用 static 关键字和 varconst 语句共同声明的。静态变量附加到类而不是类的实例,对于存储和共享应用于对象的整个类的信息非常有用。例如,当要保存类实例化的总次数或者要存储允许的最大类实例数,使用静态变量比较合适。

下面的示例创建一个 totalCount 变量(用于跟踪类实例化数)和一个 MAX_NUM 常量(用于存储最大实例化数)。totalCountMAX_NUM 这两个变量是静态变量,因为它们包含的值应用于整个类,而不是某个特定实例。

class StaticVars 
{ 
    public static var totalCount:int = 0; 
    public static const MAX_NUM:uint = 16; 
}

StaticVars 类及其任何子类外部的代码只能通过该类本身来引用 totalCountMAX_NUM 属性。例如,以下代码有效:

trace(StaticVars.totalCount); // output: 0 
trace(StaticVars.MAX_NUM); // output: 16

不能通过类实例访问静态变量,因此以下代码会返回错误:

var myStaticVars:StaticVars = new StaticVars(); 
trace(myStaticVars.totalCount); // error 
trace(myStaticVars.MAX_NUM); // error

必须在声明常量的同时初始化使用 staticconst 关键字声明的变量,就像 StaticVars 类初始化 MAX_NUM 那样。您不能为构造函数或实例方法中的 MAX_NUM 赋值。以下代码会生成错误,因为它不是初始化静态常量的有效方法:

// !! Error to initialize static constant this way 
class StaticVars2 
{ 
    public static const UNIQUESORT:uint; 
    function initializeStatic():void 
    { 
        UNIQUESORT = 16; 
    } 
}

实例变量

实例变量包括使用 varconst 关键字但未使用 static 关键字声明的属性。实例变量附加到类实例而不是整个类,对于存储特定于实例的值很有用。例如,Array 类有一个名为 length 的实例属性,用来存储 Array 类的特定实例保存的数组元素的个数。

不能覆盖子类中声明为 varconst 的实例变量。但是,通过覆盖 getter 和 setter 方法,可以实现类似于覆盖变量的功能。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号