当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > ActionScript3.0教程:变量

ActionScript
Flash as入门(4):AS常用语句
Flash as入门(5):学习AS数组
Flash as入门(6):文本与字符串⒒
Flash AS3鼠标事件使用详解
网页中flash的trace方法输出数据
Flash as入门(11):拖动与碰撞检测
AS教程:随机显示数字
Flash AS文本字段的透明度alpha变换
AS教程:对场景和MC添加鼠标监听
AIR设置:transparent和systemChrome
Flash AS3教程:flash.text.TextField
AS教程:理解变量作用域修饰符(modifier)
ActionScript3.0中类间传值问题解决
ActionScript3.0中类的定义以及类属性
Flash AS3教程:类属性的属性
ActionScript3.0教程:变量
ActionScript3.0教程:方法
ActionScript3.0教程:类的枚举
简单认识Flash as面向对象编程
Flash AS2教程:影片剪辑

ActionScript3.0教程:变量


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-30   浏览: 159 ::
收藏到网摘: n/a

变量

可以使用 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 方法,可以实现类似于覆盖变量的功能。