24
2015
03

(十三)文档类

前面一直在帧上写代码,其实主要是为了不用考虑import。

现在来试着认识一下文档类。点击舞台上的空白区域,在属性面板里,有一个“类”,这个就是文档类了。

flash里边一般情况下是一个类对应一个as文件(不要较真),比如我们前面经常用到的MovieClip,这里的文档类我们写的是Main(注意不是Main.as),对应的是Main.as,Main.as其实就是一个文本文档。

填写好文档类之后,点击右边的编辑按钮,就会自动创建一个as文档,然后直接保存。默认应该是保存在和fla文件相同的目录下的。

  1. package  {

  2. import flash.display.MovieClip;

  3. public class Main extends MovieClip {

  4. public function Main() {

  5. // constructor code

  6. }

  7. }

  8. }

上面是自动生成的代码。

看一下as文件的结构:

1、最外层是

 package{}

这个就是包。

2、public class Main extends MovieClip{}

这句是定义类,一个包里边只能有一个类,而且类名必须和as文件名一致。extends 是继承的意思,这里Main是继承自MovieClip的。

3、import flash.display.MovieClip;

这个类里边我们用到了MovieClip,所以要导入MovieClip,用到其他类也要导入。之前一直在帧上写代码,就是为了不用写这句import。

具体哪个类如何导入,可以看一下帮助。其中flash.display是MovieClip所在的包。

4、构造函数

public function Main() {

// constructor code

}

类里边和类名字相同的函数,就是构造函数。当这个类创建的时候,会自动执行类的构造函数。文档类的构造函数,相当于整个程序的入口,所以我们习惯给文档类取名为Main.as,这是从c语言遗传下来的。

5、深入理解包

还是举个例子吧,比如我们文档类可以这么写,com.hanyeah.Main

然后点击编辑,保存,(先在fla文件所在目录下创建一个文件夹,命名为com;再在com文件夹下创建一个文件夹,命名为hanyeah)将生成的as文件保存在com文件夹下的hanyeah文件夹下。

  1. package com.hanyeah {

  2. import flash.display.MovieClip;

  3. public class Main extends MovieClip {

  4. public function Main() {

  5. // constructor code

  6. }

  7. }

  8. }

注意这里:package com.hanyeah{}

就像MovieCLip的包是flash.display一样,我们的Main的包是com.hanyeah。

---------------------------------------------------------------

可以自己试着在构造函数里边写一些代码,比如用trace输出一些字符串,看看效果。



打包下载源文件

« 上一篇下一篇 »

相关文章:

闪电效果  (2017-11-28 15:4:19)

线段与椭圆的交点  (2017-1-6 14:43:41)

as3录制swf并保存flv视频  (2016-12-28 8:43:41)

解九连环  (2016-12-1 20:58:11)

as3实现setTimeout和trace  (2016-11-10 16:47:37)

registerCursor注册系统光标  (2016-9-14 9:49:40)

鼠标光标管理  (2016-9-13 17:44:3)

变形框(transform)实现  (2016-9-13 16:56:6)

flash文本消除锯齿不显示  (2016-8-25 11:43:31)

greenSock的easing曲线  (2016-8-24 18:30:11)

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。