创建对象实例

当然,在 ActionScript 中使用对象之前,该对象首先必须存在。创建对象的步骤之一是声明变量;然而,声明变量仅仅是在计算机的内存中创建一个空位置。您必须为变量指定实际值 ― 即创建一个对象并将它存储在该变量中 ― 然后再尝试使用或处理该变量。创建对象的过程称为对象“实例化”;也就是说,创建特定类的实例。

有一种创建对象实例的简单方法完全不必涉及 ActionScript。在 Flash 中,当将一个影片剪辑元件、按钮元件或文本字段放置在舞台上,并在“属性”检查器中为它指定实例名时,Flash 会自动声明一个拥有该实例名的变量、创建一个对象实例并将该对象存储在该变量中。同样,在 Adobe Flex Builder 中,当您以 Adobe Macromedia® MXML™ 创建一个组件(通过用 MXML 标签进行编码或通过将组件放置在处于设计模式下的编辑器中)并为该组件分配一个 ID(在 MXML 标记中或在 Flex 属性视图中)时,该 ID 将成为一个 ActionScript 变量的名称,并且会创建该组件的一个实例并将它存储在该变量中。

然而,您不会总是希望直观地创建对象。还可以通过几种方法来仅使用 ActionScript 创建对象实例。首先,借助几个 ActionScript 数据类型,可以使用“文本表达式”(直接写入 ActionScript 代码的值)创建一个实例。下面给出了一些示例:

ActionScript 还为 Array、RegExp、Object 和 Function 数据类型定义了文本表达式。有关这些类的详细信息,请参阅处理数组使用正则表达式Object 数据类型

对于其它任何数据类型而言,要创建一个对象实例,应将 new 运算符与类名一起使用,如下所示:

var raceCar:MovieClip = new MovieClip();
var birthday:Date = new Date(2006, 7, 9);

通常,将使用 new 运算符创建对象称为“调用类的构造函数”。“构造函数”是一种特殊方法,在创建类实例的过程中将调用该方法。请注意,当以此方法创建实例时,请在类名后加上小括号,有时还可以指定参数值 ― 这是在调用方法时另外可执行的两个操作。

注意

 

甚至对于可使用文本表达式创建实例的数据类型,也可以使用 new 运算符来创建对象实例。例如,下面的两行代码执行的是相同的操作:

var someNumber:Number = 6.33;

var someNumber:Number = new Number(6.33);

熟悉使用 new ClassName() 创建对象的方法是非常重要的。如果需要创建无可视化表示形式的 ActionScript 数据类型的一个实例(无法通过将项目放置在 Flash 舞台上来创建,也无法在 Flex Builder MXML 编辑器的设计模式下创建),则只能通过使用 new 运算符在 ActionScript 中直接创建对象来实现此目的。

具体到 Flash 中,new 运算符还可用于创建已在库中定义、但没有放在舞台上的影片剪辑元件的实例。有关详细信息,请参阅使用 ActionScript 创建 MovieClip 对象


Flash CS3

 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/main/00000024.html