Flash AS3.0入门教程
Flash在电脑中是最常用的软件,那么要如何去学好Flash呢?下面是阳光网整理的Flash AS3.0入门教程,希望对你有所帮助。
Flash AS3.0入门教程一:
Flash AS3.0入门教程-新建一个类
创建在项目中使用的类的过程可能令人望而生畏。但是,此过程中更难的部分是设计类,即
确定类中将包含的方法、属性和事件。
1. 请考虑一下该类的实例将在应用程序中扮演的角色。通常,对象担任以下三种角色之一:
■ 值对象:这些对象主要用作数据的容器 — 也就是说,它们可能拥有若干个属性和很
少的几个方法(有时没有方法)。值对象通常是明确定义的项目的代码表示,例如音
乐播放器应用程序中的 Song 类(表示单个实际的歌曲)或 Playlist 类(表示概念
上的一组歌曲)。
■ 显示对象:它们是实际显示在屏幕上的对象。例如,用户界面元素(如下拉列表或状
态显示)和图形元素(如视频游戏中的角色)等等就是显示对象。
■ 应用程序结构:这些对象在应用程序执行的逻辑或处理方面扮演着广泛的支持角色。
例如,在仿生学中执行某些计算的对象;在音乐播放器应用程序中负责刻度盘控件与
音量显示之间的.值同步的对象;管理视频游戏中的规则的对象;或者在绘画应用程
序中加载保存的图片的对象。
2. 确定类所需的特定功能。不同类型的功能通常会成为类的方法。
3. 如果打算将类用作值对象,请确定实例将要包含的数据。这些项是很好的候选属性。
4. 由于类是专门为项目而设计的,因此最重要的是提供应用程序所需的功能。回答下列问
题可能会对您很有帮助:
■ 应用程序将存储、跟踪和处理哪些信息?确定这些信息有助于您识别可能需要的值对
象和属性。
■ 需要执行哪些操作 — 例如,在应用程序首次加载时,在单击特定的按钮时,在影片
停止播放时,分别需要执行哪些操作?这些是很好的候选方法(如果“动作”仅涉
及更改单个值,则是很好的候选属性)。
■ 对于任何给定的动作,要执行该动作,该类需要了解哪些信息?这些信息将成为方法
的参数。
■ 随着应用程序开始工作,应用程序的其它部分需要了解类中的哪些内容将发生更改?
这些是很好的候选事件。
5. 如果有一个现有的对象与您需要的对象类似,只是缺少某些您需要添加的一些额外功
能,应考虑创建一个子类(在现有类的功能的基础之上构建的类,不需要定义它自己的
所有功能)。例如,如果您希望创建一个将作为屏幕上的可视对象的类,可将一个现有显
示对象(如 Sprite 或 MovieClip)的行为用作该类的基础。在这种情况下,MovieClip
(或 Sprite)是“基类”,而您的类是该类的扩展。有关创建子类的详细信息,请参阅
编写类的代码
一旦制订了类的设计计划,或至少对该类需要跟踪哪些信息以及该类需要执行哪些动作有了
一定了解后,编写类的实际语法就变得非常简单了。
下面是创建自己的 ActionScript 类的最基本步骤:
1. 在特定于 ActionScript 的程序(如 Flex Builder 或 Flash)、通用编程工具(如
Dreamweaver)或者可用来处理纯文本文档的任何程序中打开一个新的文本文档。
2. 输入 class 语句定义类的名称。为此,输入单词 public class,然后输入类名,后跟一
个左大括号和一个右大括号,两个括号之间将是类的内容(方法和属性定义)。例如:
public class MyClass
{
}
单词 public 表示可以从任何其它代码中访问该类。
3. 键入 package 语句以指示包含该类的包的名称。语法是单词 package,后跟完整的包名
称,再跟左大括号和右大括号(括号之间将是 class 语句块)。例如,我们将上一步中
的代码改为:
package mypackage
{
public class MyClass
{
}
}
4. 使用 var 语句,在类体内定义该类中的每个属性;语法与用于声明任何变量的语法相同
(并增加了 public 修饰符)。例如,在类定义的左大括号与右大括号之间添加下列行将
创建名为 textVariable、numericVariable 和 dateVariable 属性:
public var textVariable:String = "some default value";
public var numericVariable:Number = 17;
public var dateVariable:Date;
5. 使用与函数定义所用的相同语法来定义类中的每个方法。例如:
■ 要创建 myMethod() 方法,应输入:
public function myMethod(param1:String, param2:Number):void
{
// 使用参数执行某个操作
}
■ 要创建一个构造函数(在创建类实例的过程中调用的特殊方法),应创建一个名称与
类名称完全匹配的方法:
public function MyClass()
{
// 为属性设置初始值
// 否则创建该对象
textVariable = "Hello there!";
dateVariable = new Date(2001, 5, 11);
}
如果没有在类中包括构造函数方法,编译器将自动在类中创建一个空构造函数(没有
参数和语句)。
您还可以定义其它几个类元素。这些元素更为复杂。
■ “存取器”是方法与属性之间的一个特殊交点。在编写代码来定义类时,可以像编写方法
一样来编写存取器,这样就可以执行多个动作(而不是像在定义属性时那样,只能读取
值或赋值)。但是,在创建类的实例时,可将存取器视为属性 — 仅使用名称来读取值或
赋值。
■ ActionScript 中的事件不是使用特定的语法来定义的。应使用 EventDispatcher 类的功
能来定义类中的事件,以便跟踪事件侦听器并将事件通知给它们。
有关组织类的一些建议
与早期的 ActionScript 版本不同,ActionScript 3.0 没有一个文件对应一个类的限制,即不
限制每个文件只能使用一个类。使用 ActionScript 3.0,您可以将多个类的源代码保存到单
个 .as 文件中。在某些情况下,将多个类包装到单个源文件中可能看似比较方便,但通常而
言,这被认为是不好的编程习惯,原因有二:
■ 如果将多个类包装到一个大文件中,则重用每个类将非常困难。
■ 当文件名与类名不对应时,找到特定类的源代码将非常困难。
由于以上原因,Adobe 建议您始终将每个类的源代码保存在其自己的文件中,并为文件指定
与类相同的名称。
【Flash AS3.0入门教程】相关文章: