Flash AS3.0教程:创建自定义类
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-07
在ActionScript 3 中,类是最基本的编程结构,所以必须先掌握编写类的基础知识。所有的类都必须放在.as文件中,每个as文件里只能定义一个public 类,而且类名要与文件名相同。比如:你的类名为Example ,那么文件名必须为Example.as。 在ActionScript 3.0 中所有的类都必须放在包中。包是对类进行分类的单位,其意义相当于文件系统的目录。包路径相对于classpath(类路径), 默认的类路径就是项目的根目录,因此顶级的包目录就是项目根目录。包声明如下: package name { } 如果类定义在顶级包中,那么包名可以不指定,如: package { } 当类文件保存在子目录,那么包名就是它的保存目录,例如,文件保存在example目录,那么包这样声明: package example { } 如果类文件保存在example 目录的子目录subpackage, 应这样声明: package example.subpackage { } 包是很重要的,它可以避免类名称空间冲突。例如,有两个开发者写了两个类文件都叫MessageManager. 这两个类虽有相同名字,但是完成不同的任务,因此你不能把这两个类放在一起,如果这样做,编译器将不知道调用哪个,一个办法是取个唯一的类名字。 你可以取名字叫EmailManager 和BinarySocket- MessageManager, 这是可以的,但是如果你管理成千上万的类这时就很困难了。因此用包可以很好的解决这个问题,即使你有很多相同的类名,只要它们不在同一个包就不会冲突,如把MessageManager 放在net.messaging.email 包另一个放net.messaging.binarysocket 包中。 一般取包名都以自己的网站域名,这样可以最大限度避免和别人的包名相冲突。 当有多个项目公用一些类,那么这些类直接被放在主包中的子目录中。例如,上面的MessageManager 类放在com.examplecorp.net.messaging.email 和com.examplecorp.net.messaging.binary- socket 包中。 下一步就是声明类自身: public class Name { } 类声明必须在包内。下面的代码在顶级包中定义了叫Example 的类: package { public class Example { } } 类主体在括号内定义,包括属性,方法。属性就是和类关联的变量,使用var关键字声明他们,属性也有修饰符指定其范围。修饰符有: private 该属性只有类实例自身可访问. public 该属性可以被任何类实例访问(若直接被类访问可设置成static) protected 该属性只被自身类实例或派生类实例访问。 internal 该属性可被包内的类实例访问。 默认情况下是属性被指定为internal ,除非自己指定修饰符。大多数情况,属性被指定为private或protected。按照习惯约定,private 和protected 声明的属性名称都在前面加上下划线。 看下面的例子: package { public class Example { private var _id:String; } } 与类关联的还有方法,你可以使用function关键字像声明函数那样声明方法。和属性一样,方法也有修饰符(public, private, protected, internal)。如果方法被类实例访问可设置为public(直接被类访问则加上static).如果方法只在类内方法则被设置为private 或protected。下面的代码声明一个方法叫getId( ): package { public class Example { private var _id:String; public function getId( ):String { return _id; } } } 按照约定,方法名称的起始字符必须为小写。每个类都有个和自己类名相同的方法,该方法称为构造函数,用它为创建新的实例时进行初始化工作。在ActionScript 3.0 中,所有的构造函数都是public ,构造函数不能有返回值,也不能声明有返回类型。下面的代码声明了构造函数: package { public class Example { private var _id:String; public function Example( ) { _id = "Example Class"; } public function getId( ):String { return _id; } } } 关键词:
|
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于Flash AS3.0教程:创建自定义类的所有评论