FlashActionScript30类的继承.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FlashActionScript30类的继承

面对对象非常重要的特性就是继承,也就是英文inheritance。继承呢是类和类之间的一种关系。当一个类A继承了另一个类B,这就表示A可以使用B的所有属性和方法。但是类的继承并不仅限于类的复制,它还允许继承者有自己的特性,就好像一个孩子,他可以继承母亲的眼睛,父亲的嘴巴特征,但他又不会跟父母完全一样。继承关系是可以拿遗传关系来类比的,在类和类之间架起了一道道的桥梁,它是一种关系纽带。它既可以使代码特征从一个类传递到另一个类,又可以使类和类之间保持它独有的特性。 我们来看一下类和类之间继承的一个例子。首先我们要建一个as文档,我们建立一个比较简单的类,称之为B。这个B的结构非常简单,它有一个属性,就是n,n是一个Number类型的数据,本身我们在声明它的同时给它赋了一个初始值100。另外就是B的构造函数,类的构造函数是在类被实例化的同时马上执行的。B的构造函数里面包含一句trace代码,就是追踪输出“我是类B”。这就是类B的一个结构,它有一个属性,同时呢它还可以追踪输出“我是类B“这样一句输出文本。那么我们给它起名字叫B,前边呢我们已经说过了类的名称,构造函数的名称,整个文件的名称要保持一致。 下面呢我们再来建一个新的类,我们姑且把这个类命名为A。来看一看A的结构,这就是全部代码,我们先把public var m:Number = 200;这一句注销掉。我们首先声明了一个类A,然后extends关键字,它直接标明我们是要继承或者扩展类B的。这个as文件呢本身是描述了类A要继承类B,我们刚才也说了在继承的同时,它所有的属性或者方法都可以被使用。我们来保存一下A。 那么我们现在已经有了类A还有类B,其中的这个关系呢是A继承了B,B里面有实际的代码。我们来看一下,如果我们实例化B,大家可以看到在输出面板里面会输出“我是类B”,这是我们刚才在追踪函数里面所写的。同样,如果我们实例化A,大家可以看到它实际上还是输出“我是类B”,为什么呢?因为类B的构造函数里边这个trace是被A继承走的,相应的呢它也要输出相同的结果。 现在我们来看看在A和B中都定义的属性,为了方便我们还是给它一个实例的引用。我们??来看B,我们把B的实例命名为小写的b,输出结果还是一样的。我们也可以看一看这个新实例里面包含的属性n,大家可以看到输出的n是100,就是我们刚刚所约定的。 如果我们把B换成A,有没有什么变化呢?没有,因为我们在A的继承逻辑当中呢没有对B做任何的改动。 下面我们来修改一下类A当中的一些属性。就是我们继承了B,同时我们添加了这个属性m,m的初始值是200,这个是在类A定义中所赋予的。A是继承了B,可是B呢本身不会继承A,m这个属性是A所特有的。下面我们来看看这个实际执行的结构,如果我们需要输出A的m属性,把n换成m。大家可以看到m是200。 我们还是来看一下B,B有没有m这个属性呢?注意这个输出面板上显示引用错误,这个结果呢也是我们刚才定义类当中所预见到的,因为B里面没有m属性。A在继承B的同时还声明了一个自己独特的属性,也就是m。这就是在继承当中既有继承又有自己的独立特性。

文档评论(0)

haihang2017 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档