如何Flash中实现自定义类.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
如何Flash中实现自定义类

如何Flash中实现自定义类 类是对象的蓝图,Flash的自定义类一定要放在.as文件中,并且以类名作为文件名,包括大小写也必须一样。我们可以把类文件放在使用这个类的fla文件的同一个目录下,这样这个fla文件就可以找到并编译这个类。 1 创建类的语法 创建类的语法如下: class 类名称[ extends 父类]{ 类成员 } 类的成员包括它的构造函数、属性、方法。 下面的代码创建一个机动车类。机动车有如下的成员: 成员 说明 name:String 名称 numberPlate:String 车牌号 drive() 启动 stop() 停车 class Vehicle { var name:String; var numberPlate:String; function drive() { trace(车开动了!); } function stop() { trace(车停止了!); } } 保存文件,名称为Vehicle.as,保存在你的某个工作目录下,然后在这个目录下再新建一个flash文档,例如testClass.fla。在这个文档中输入以下代码: myVehicle=new Vehicle; myVehicle.drive(); myVehicle.stop(); 按Ctrl+Enter测试影片,我们会发现弹出输出窗口,显示如下内容: 可见我们的自定义类已经起被我们正确调用了。 2 构造函数 类的构造函数是一种特殊的函数,在使用 new 关键字创建类的实例时会自动调用这个函数。构造函数的名称与包含它的类的名称相同。如果未在类文件中显式声明构造函数(也就是说,如果未创建名称与类名匹配的函数),编译器将自动创建一个空的构造函数。 例如给上面的Vehicle类添加构造函数,看如下代码的黑体部分: class Vehicle { var name:String; var numberPlate:String; function Vehicle(nameValue:String, numberPlateValue:String) { name = nameValue; numberPlate = numberPlateValue; trace(车辆的名称是: + name +\n车牌号是:+numberPlate); } function drive() { trace(车开动了!); } function stop() { trace(车停止了!); } } 保存Vehicle.as文件,然后将testClass.fla中的代码改为: myVehicle1=new Vehicle(东风标致307,苏E7CXX); myVehicle2=new Vehicle(江淮汽车,京A5KXX); 按Ctrl+Enter测试影片,此时会调用构造函数,设置类实例myVehicle的两个属性值并且输入他们的信息。 输出窗口显示如下: 注意:在类的内部,只能放置各种变量和函数,而不能放置单独了代码。例如下面的类代码会出错: class Vehicle { var name:String; var numberPlate:String; trace(这行代码出错啦!); } 点击语法检查按钮,则会提示脚本错误,在输出窗口中显示如下信息: **错误** E:\编程\flash编程思想\示例文件\Vehicle\Vehicle.as: 第 4 行: 类定义中不允许此语句。 trace(这行代码出错啦!); ActionScript 错误总数:1 报错:1 3 封装 在完美的面向对象设计中,对象被看作包含(或封装)功能的黑匣子。程序员应当能够在仅知道对象的属性、方法和事件(对象的编程接口)的情况下与对象进行交互,而不需知道其实现的详细信息。此方法使程序员可以在更高的抽象层次上思考,并能提供可用于构建复杂系统的组织框架。 注意:如果没有添加标识符,则默认的修饰符是public。为了实现细节隐藏,请尽量将变量和与外界无关的方法都设置为私有的。 一个典型的封装的例子是将一些属性设为私有,然后通过setter和getter方法来存取这个属性,这样做的好处是当这个属性变量名称发生改变的时候,我们没有必要修改每个使用到这个变量的代码而只要修改一下setter和getter函数即可。这两个函数比较特殊,在类内部是一个函数,但是在实例调用时,又以属性的方式被调用。 下面的代码创建的Vehicle类多了一个只读的类属性counter,用来表示车辆的总数。并将原来的两个属性都改成用setter和getter存取方式。 class Vehicle { privat

文档评论(0)

shenlan118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档