adobeflashplayer:Flash AS3.0菜鸟学飞教程:创建自定义类

  在ActionScript 3 中类是最基本编程结构所以必须先掌握编写类基础知识所有类都必须放在.as文件中每个as文件里只能定义个public 类而且类名要和文件名相同比如:你类名为Example 那么文件名必须为Example.as

  在ActionScript 3.0 中所有类都必须放在包中包是对类进行分类单位其意义相当于文件系统目录包路径相对于path(类路径), 默认类路径就是项目根目录因此顶级包目录就是项目根目录包声明如下:

package name {
}


  如果类定义在顶级包中那么包名可以不指定如:

package {
}


  当类文件保存在子目录那么包名就是它保存目录例如文件保存在example目录那么包这样声明:

package example {
}


  如果类文件保存在example 目录子目录subpackage, 应这样声明:

package example.subpackage {
}


  包是很重要它可以避免类名称空间冲突例如有两个开发者写了两个类文件都叫MessageManager. 这两个类虽有相同名字但是完成区别任务因此你不能把这两个类放在如果这样做编译器将不知道哪个个办法是取个唯类名字

  你可以取名字叫EmailManager 和BinarySocket- MessageManager, 这是可以但是如果你管理成千上万类这时就很困难了因此用包可以很好解决这个问题即使你有很多相同类名只要它们不在同个包就不会冲突如把MessageManager 放在net.messaging.email 包另个放net.messaging.binary 包中

  般取包名都以自己网站WebSite域名这样可以最大限度避免和别人包名相冲突

  当有多个项目公用些类那么这些类直接被放在主包中子目录中例如上面MessageManager 类放在com.examplecorp.net.messaging.email 和com.examplecorp.net.messaging.binary- 包中

  下步就是声明类自身:

public Name {
}


  类声明必须在包内下面代码在顶级包中定义了叫Example 类:

package {
public Example {
}
}


  类主体在括号内定义包括属性思路方法属性就是和类关联变量使用var关键字声明他们属性也有修饰符指定其范围修饰符有:

  private

  该属性只有类例子自身可访问.

  public

  该属性可以被任何类例子访问(若直接被类访问可设置成)

  protected

  该属性只被自身类例子或派生类例子访问

  ernal

  该属性可被包内类例子访问

  默认情况下是属性被指定为ernal 除非自己指定修饰符大多数情况属性被指定为private或protected按照习惯约定private 和protected 声明属性名称都在前面加上下划线

  看下面例子:

package {
public Example {
private var _id:String;
}
}


  和类关联还有思路方法你可以使用function关键字像声明那样声明思路方法和属性思路方法也有修饰符(public, private, protected, ernal)如果思路方法被类例子访问可设置为public(直接被类访问则加上).如果思路方法只在类内思路方法则被设置为private 或protected下面代码声明个思路方法叫getId( ):

package {
public Example {
private var _id:String;
public function getId( ):String {
_id;
}
}
}


  按照约定思路方法名称起始必须为小写每个类都有个和自己类名相同思路方法该思路方法称为构造用它为创建新例子时进行化工作在ActionScript 3.0 中所有构造都是public 构造不能有返回值也不能声明有返回类型下面代码声明了构造:

package {
public Example {
private var _id:String;
public function Example( ) {
_id = "Example Class";
}
public function getId( ):String {
_id;
}
}
}


  下面我们编写个“Ball类”来感受创建、保存及路径设置:

  1、 在本地硬盘“E:\”下新建名为“fbook”目录在“fbook”目录下新建“”目录

  2、打开Flash新建个ActionScript 文件保存在E:\ fbook\文件名为"Ball.as"在as文件中输入代码:

package {
import flash.display.Sprite;
public Ball extends Sprite {
private var radius:Number;
private var color:u;
public function Ball(radius:Number=40,color:u=0xff0000) {
this.radius=radius;
this.color=color;
init;
}
public function init:void {
graphics.beginFill(color);
graphics.drawCircle(0,0,radius);
graphics.endFill;
}
}
}


  /*当这个类被例子化后就能绘制出个圆可以自行给出半径(radius) 和颜色(color)如果不给参数



  就会使用默认参数:半径为40颜色为红色*/

  3、新建个fla文件保存在任意目录下文件名任意选【编辑】菜单下首选参数 -- 类别 -- ActionScript -- ActionScript 3.0 设置… 打开类路径设置面板 -- 单击面板上部加号就可以添加新目录路径作为类路径路径可以手工填写也可以点面板上部瞄准器浏览到路径添加点确定这样路径就

  设置好了(如果.as文件和fla文件放在同目录中不必设置类路径)

Flash AS3.0菜鸟学飞教程:创建自定义类

  4、在属性面板文档类:填入“Ball”没有引号按Ctrl+Enter组合键测试

Flash AS3.0菜鸟学飞教程:创建自定义类



Tags:  flash播放器 flash插件 flashplayer adobeflashplayer

延伸阅读

最新评论

发表评论