由于初次尝试外部类编写,边写边思考导致对文档章节缺乏整体规划,致使标题结构出现混乱,给阅读带来不便,敬请谅解。
1、 启动Flash CS6,创建新文档并立即保存。
2、 由于外部类的编写方式要求每个fla文件需对应一个或多个as文件,因此在本地磁盘的某个位置必须先创建一个文件夹,并将所有相关文件统一存放于此文件夹中,以确保结构完整和正常调用。
3、 请创建一个名为67的文件夹,并将新建立的Flash文档保存其中,文件命名为67.fla。
4、 在Flash CS6中,使用选择工具点击舞台空白区域,于属性面板的类字段输入外部类名称,随后点击右侧的编辑图标,系统将弹出提示框,确认即可完成设置。
5、 再次点击上一步中的小笔图标,将打开一个纯代码编辑窗口,也就是前两节中我们所接触的文档类型。此时直接保存文件,Flash CS6已自动设置好文件名,无需更改,确认保存即可。
6、 文档类名称必须与as文件名完全一致,包括大小写,因此请勿更改已设定的文件名。
7、 操作完成后,本地硬盘的67文件夹中会生成两个所示的文件。
8、 上述方法是创建文档类的便捷途径,所示,为Flash CS6自动生成的文档类代码。
9、 导入语句、继承声明和构造函数结构均已预先完成,我们只需在构造函数内部编写具体实现代码即可。
10、 添加一行trace语句来输出文字内容,具体效果所示。
11、 新手需特别留意:每次修改as文件后,在测试影片前务必先保存该文件(fla文件无需单独保存)。中箭头所示,若Hi.as文件名后出现星号*,表示尚未保存。未保存将导致测试结果出错,因此请养成修改后立即保存的良好习惯,切勿忽略这关键步骤。
12、 面向对象编程适合复杂项目,若项目极其简单,采用这种方式反而繁琐,不如直接在时间轴上编写代码来得简洁高效。
13、 项目规模越大、结构越复杂,面向对象编程的优势越明显。
14、 AS3本质上就是一种面向对象的编程语言。
15、 在时间轴上编写代码时,Flash在测试影片的编译阶段会自动将这些代码转换为文档类形式。通过使用SWF反编译工具,我们可以查看这一转换后的代码结构,具体过程将在下文详细说明。
16、 创建一个AS3的Flash文档并立即保存,文件命名为temp.fla。
17、 在Flash时间轴上编写代码并测试影片,系统将自动生成temp.swf文件。
18、 利用任意反编译工具对temp.swf文件进行解析,提取其中的代码内容。
19、 我采用的是JPEXS Free Flash Decompiler,这是一款开源且完全免费的反编译工具。使用前需确保电脑已安装Java运行环境。若系统中未安装,程序启动时会自动跳转至Java官网下载页面。然而目前该官网的下载链接无法正常访问,建议用户通过其他可靠渠道手动下载并安装Java环境,以保证软件顺利运行。
20、 启动JPEXS Free Flash Decompiler软件,按照图示操作,加载并打开名为temp.swf的文件,准备进行后续处理。
21、 所示,逐级展开各个项目即可查看内部代码。
22、 在时间轴上看似只写了一行代码,反编译后却出现大量内容。这正是AS3语言的真实形态。虽然允许直接在时间轴编写代码,但AS3本质上仅支持文档类结构。真正运行时,所有时间轴代码都会被转换为文档类形式。Flash CS6在编译过程中自动完成了这一转换,整个过程对用户透明,无需手动干预,使得初学者也能顺利入门,但了解其底层机制对深入掌握AS3至关重要。
23、 使用Flash CS6打开反编译得到的FLA文件,删除时间轴上的代码(避免测试影片时报错),随后查看文档类的名称,具体所示。
24、 所示,点击类右侧的小手图标,即可显示文档类代码。
评论
更多评论