第8部分 面向对象基础

上传人:qt****68 文档编号:52468827 上传时间:2018-08-22 格式:PPT 页数:16 大小:119KB
返回 下载 相关 举报
第8部分  面向对象基础_第1页
第1页 / 共16页
第8部分  面向对象基础_第2页
第2页 / 共16页
第8部分  面向对象基础_第3页
第3页 / 共16页
第8部分  面向对象基础_第4页
第4页 / 共16页
第8部分  面向对象基础_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《第8部分 面向对象基础》由会员分享,可在线阅读,更多相关《第8部分 面向对象基础(16页珍藏版)》请在金锄头文库上搜索。

1、第8部分 面向对象基础客观世界中任何一个事物都可以看成一个对象。客观世 界是由千千万万个对象组成,对象间通过一定的渠道相互联 系。从计算机的角度看,一个对象应该包括两个要素:数据 和操作。对象就是一个包含数据以及与这8.1 类和对象客观世界中每一个实体都是对象。在ActionScript 3.0中 对象的类型称为类(class)。类代表了某一对象的共性和特 征。可以说类是对象的抽象,而对象是类的具体实例。在 ActionScript 3.0中先声明一个类,然后用类去定义若干个同 类型的对象。用户可将类看成是一种数据类型,对象是这种 数据类型的变量。8.1.1 类的定义形式在ActionScri

2、pt 3.0中定义一个类就是要定义类的成员都 数据和成员函数。8.1.2 类的成员类型类的成员类型包括三大类:一类是私有(private),即 外界不能调用。一类是公有(public),即外界可以调用。一 类是受保护(protected),此内容将在后面小节中介绍。8.1.3 调用类中的成员类中的成员只有指明类型为public后,外界才能调用。 外界可以调用类中的公有成员数据和公有成员函数。在调用 类的成员之前需要实例化类,即创建类的对象。因为类中成 员只有在创建类的对象时,才会在内存中分配空间。8.2 构造函数和析构函数类定义中一般都有两个基本的成员函数:构造函数和析 构函数。构造函数一般用

3、于在类对象创建时初始化成员数据 。析构函数一般用于在类对象清除时释放成员所占的内存空 间。在ActionScript 3.0的类定义中构造函数和析构函数都可 缺省,但语言中有默认的、不可见的构造函数和析构函数。 在类定义中构造函数还是非常常用的,因为用户经常需 要初始化成员数据,而默认的构造函数不初始化任何成员数 据。8.2.1 构造函数构造函数用在在类对象创建时执行,一般用于成员数据 的初始化。构造函数与其他成员不同,不需要用户发命令来 激活它,在创建类的对象时自动执行。构造函数可用户自定 义,但构造函数名称与类名必须一致,以便系统能识别其为 构造函数。8.2.2 析构函数析构函数与构造函数

4、正好相反,当类对象清除时自动执 行析构函数。析构函数往往用来做释放类对象的内存空间。 析构函数名也与类名相同,只是在函数名前面加一个波浪符 “”,以区别于构造函数。 析构函数不带任何参数,也没有返回值(包括void类型 )。一个类中只能有一个析构函数。如果用户没有编写析构 函数,编译系统会自动生成一个默认的析构函数,但这个析 构函数不进行任何操作。所以许多简单的类中没有显式的析 构函数。8.3 继承与派生面向对象技术强调程序的可重用性。在ActionScript 3.0 中可重用性是通过继承机制来实现。继承是一种类的重用技 术,用户创建新的类可以基于某一基础类,从而充分利用了 已有资源。已存在

5、的类称为基类或父类。通过继承而新生成 的类称为派生类或子类。派生类继承了基类的所有数据成员 和成员函数,并增加了新的成员。8.3.1 派生类定义的一般形式派生类继承了基类的全部成员,使用extends关键字表 示此类是某类的派生类。 派生类由于继承了基类,所以包括基类成员和其新增的 成员。8.3.2 派生类的保护成员protected关键字和private、public一样是用来声明成员 的引用权限的。由protected声明的成员称为保护成员。保护 成员不能被外界引用(这点和私有成员相同),但可以被派 生类的成员函数引用。所以如果想在派生类引用基类的成员 ,可以将基类的成员声明为protec

6、ted。8.3.3 派生类的构造函数派生类从基类继承了非私有成员函数和数据成员,但是 在建立派生类的对象时,系统只执行派生类的构造函数,而 不会自动执行基类的构造函数。也就是说,基类的构造函数 是不能继承的。如果基类的构造函数包含对变量的初始化, 那么在建立派生类的对象时,由于没有执行基类的构造函就 会使基类的变量未初始化。 8.4 接口在大型程序设计初期开发者往往不需要思考具体的逻辑 过程。比如做菜,先想好要买哪些原料,大致采取怎样的做 法,是煮、蒸或是炸。不用去思考味精放多少,要烧多久等 琐碎的事情。这样做的好处是能整体把握程序设计,避免陷 入代码实现误区。 ActionScript 3.

7、0语言提供接口的概念。接口是包含一组 虚方法的抽象类型,其中每一种方法都有其名称、参数和返 回值。接口方法中不包含任何实现,只定义了有哪些方法。 然后通过类来实现接口,一个类可以实现多个接口。8.4.1 创建接口在Flex Builder 3中创建接口的方法与创建类的方法类 似。执行“File” “New” “ActionScript Interface”命令, 弹出新建接口向导。8.4.2 使用类实现接口接口定义了抽象的方法,但没有方法的具体实现。接口 方法的具体实现可在类中完成。 ICommand接口中定义了excute抽象方法, GetEngCaptionCommand类实现了接口中的e

8、xcute方法。实现接口的类中一定要包括接口中全部方法的实现。上 述ICommand接口中只有一个execute方法待实现,所以类中 只实现了execute。若Command接口中有更多方法,类都需 要一一实现方法。 用户不能调用接口中方法,而且这样做也没有意义,因 为接口不提供方法的具体实现。使用类实现接口后,用户就 可调用类中的方法来完成任务。8.5 小结客观世界中的每个事物都可看作是一个对象,对象间相 互联系,构成复杂的一个世界。类是同类型的对象的集合, 也就是说类是对象的抽象,对象是类的具体实例。类中包括 成员数据和成员函数。类成员的类型有3种:public、private 和protected。只有声明为public的成员外界才可以访问。构 造函数是指在类对象创建时自动执行的函数,一般用于初始 化成员数据。析构函数是指在类对象消除时自动执行的函数 ,一般用于释放内存空间。继承机制是指在原有类的基础上 新建类,这样就能充分利用好现有资源,有利于程序的扩展 和重用。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号