第8章节 面向对象基础.ppt

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

第8章 面向对象基础 客观世界中任何一个事物都可以看成一个对象。客观世界是由千千万万个对象组成,对象间通过一定的渠道相互联系。从计算机的角度看,一个对象应该包括两个要素:数据和操作。对象就是一个包含数据以及与这 8.1 类和对象 客观世界中每一个实体都是对象。在ActionScript 3.0中对象的类型称为类(class)。类代表了某一对象的共性和特征。可以说类是对象的抽象,而对象是类的具体实例。在ActionScript 3.0中先声明一个类,然后用类去定义若干个同类型的对象。用户可将类看成是一种数据类型,对象是这种数据类型的变量。 8.1.1 类的定义形式 在ActionScript 3.0中定义一个类就是要定义类的成员都数据和成员函数。 8.1.2 类的成员类型 类的成员类型包括三大类:一类是私有(private),即外界不能调用。一类是公有(public),即外界可以调用。一类是受保护(protected),此内容将在后面小节中介绍。 8.1.3 调用类中的成员 类中的成员只有指明类型为public后,外界才能调用。外界可以调用类中的公有成员数据和公有成员函数。在调用类的成员之前需要实例化类,即创建类的对象。因为类中成员只有在创建类的对象时,才会在内存中分配空间。 8.2 构造函数和析构函数 类定义中一般都有两个基本的成员函数:构造函数和析构函数。构造函数一般用于在类对象创建时初始化成员数据。析构函数一般用于在类对象清除时释放成员所占的内存空间。在ActionScript 3.0的类定义中构造函数和析构函数都可缺省,但语言中有默认的、不可见的构造函数和析构函数。 在类定义中构造函数还是非常常用的,因为用户经常需要初始化成员数据,而默认的构造函数不初始化任何成员数据。 8.2.1 构造函数 构造函数用在在类对象创建时执行,一般用于成员数据的初始化。构造函数与其他成员不同,不需要用户发命令来激活它,在创建类的对象时自动执行。构造函数可用户自定义,但构造函数名称与类名必须一致,以便系统能识别其为构造函数。 8.2.2 析构函数 析构函数与构造函数正好相反,当类对象清除时自动执行析构函数。析构函数往往用来做释放类对象的内存空间。析构函数名也与类名相同,只是在函数名前面加一个波浪符“~”,以区别于构造函数。 析构函数不带任何参数,也没有返回值(包括void类型)。一个类中只能有一个析构函数。如果用户没有编写析构函数,编译系统会自动生成一个默认的析构函数,但这个析构函数不进行任何操作。所以许多简单的类中没有显式的析构函数。 8.3 继承与派生 面向对象技术强调程序的可重用性。在ActionScript 3.0中可重用性是通过继承机制来实现。继承是一种类的重用技术,用户创建新的类可以基于某一基础类,从而充分利用了已有资源。已存在的类称为基类或父类。通过继承而新生成的类称为派生类或子类。派生类继承了基类的所有数据成员和成员函数,并增加了新的成员。 8.3.1 派生类定义的一般形式 派生类继承了基类的全部成员,使用extends关键字表示此类是某类的派生类。 派生类由于继承了基类,所以包括基类成员和其新增的成员。 8.3.2 派生类的保护成员 protected关键字和private、public一样是用来声明成员的引用权限的。由protected声明的成员称为保护成员。保护成员不能被外界引用(这点和私有成员相同),但可以被派生类的成员函数引用。所以如果想在派生类引用基类的成员,可以将基类的成员声明为protected。 8.3.3 派生类的构造函数 派生类从基类继承了非私有成员函数和数据成员,但是在建立派生类的对象时,系统只执行派生类的构造函数,而不会自动执行基类的构造函数。也就是说,基类的构造函数是不能继承的。如果基类的构造函数包含对变量的初始化,那么在建立派生类的对象时,由于没有执行基类的构造函就会使基类的变量未初始化。 8.4 接口 在大型程序设计初期开发者往往不需要思考具体的逻辑过程。比如做菜,先想好要买哪些原料,大致采取怎样的做法,是煮、蒸或是炸。不用去思考味精放多少,要烧多久等琐碎的事情。这样做的好处是能整体把握程序设计,避免陷入代码实现误区。 ActionScript 3.0语言提供接口的概念。接口是包含一组虚方法的抽象类型,其中每一种方法都有其名称、参数和返回值。接口方法中不包含任何实现,只定义了有哪些方法。然后通过类来实现接口,一个类可以实现多个接口。 8.4.1 创建接口 在Flex Builder 3中创建接口的方法与创建类的方法类似。执行“File”|“New”|“ActionScript Interface”命令,弹出新建接口向导。 8.4.2 使用类实现接口 接口定义了抽

文档评论(0)

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

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

1亿VIP精品文档

相关文档