第08章 面向对象程的序设计.pptVIP

  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文档。上传文档
查看更多
第08章 面向对象程的序设计

第八章 面向对象程序设计 ;目 录;8.1 面向对象程序设计的基本概念;8.1 面向对象程序设计的基本概念;8.1.1 概述; Visual FoxPro 6.0不仅支持传统的结构化程序设计,而且全面引入面向对象的程序设计方法,从而根本改变了FoxPro应用程序面向过程的开发方式,把设计的重点转向对象之间的联系,而不是拘泥于具体实现的细节,不仅提高了应用程序的开发效率,同时也降低了程序设计过程中的出错机会。 ;8.1.2 面向对象的基本概念 ;⑴ 属性(Property):每个对象都有属性。属性用来表示对象的特征和状态,如VFP对象“窗口”的属性包括在屏幕上的位置、高度、宽度、背景颜色、标题、名称等。对象的属性用各种类型的数据表示。 ⑵ 事件(Event):每个对象都可以对称为事件的动作进行识别和响应。当事件发生时,该事件的过程代码将被执行,事件代码是当对象响应了某个事件后执行的一系列操作的算法。 ;⑶ 方法(Method):方法是与对象相关的过程,是为对象完成一定功能而编写的代码。方法不同于一般的VFP过程,是与对象紧密联系的过程。 ;⑷ 事件驱动工作方式 面向对象的程序设计不同于传统的过程化程序设计,程序的执行顺序不是按照事先设计的结构进行,而是以对象为中心,采用事件驱动方式工作。一个对象能响应多个不同的事件,一个事件通常对应一个事件过程,一个过程能完成一个预定的任务,即由对象来响应事件,以事件来驱动过程完成事件任务。 当应用程序运行时始终处于等待某个事件发生的状态,一旦某个事件被触发,系统马上去执行与事件对应的方法程序,待事件过程执行完毕后,系统又处于等待某个事件发生的状态。这种工作方式称为事件驱动方式。;⒉ 类(Class) 一个类定义了相似对象的特征和行为方式,是某一类对象的“模板”,有了类定义后,基于类可以生成这类对象中的任何一个,它们具有相同的属性和行为方式,但在属性的取值上可以完全不同,并且彼此是独立的。基于某个类生成的对象称为这个类的实例。不仅于此,在某个类的基础上,还可以派生出若干个子类,子类不仅继承了父类的所有特征,还可以添加自己的特征。 类的主要特征:;⑴ 封装(Encapsulation) 封装指包装并隐藏对象信息,是面向对象程序设计方法的主要特征之一。在OOP中,对象的属性和方法被封装在一段独立的源代码中,对数据的访问只能通过调用该对象的方法进行,其他对象不能直接作用于该对象内部的数据。因此,对象是一个完全封装的实体,具有模块独立性,较之传统的面向过程的程序设计方式中将数据与操作分离的方法更为方便与安全。正因为如此,在面向对象程序设计中用户可以集中精力描述和控制对象的属性与方法,而忽略对象内部实现的具体细节。 ;⑵ 子类(SubClass) 以某个类的定义为起点创建的新类称为子类,前者称为父类。一个子类可以拥有父类的全部功能,也可以增加自己特有的属性和方法,使它具有与父类不同的特殊性。定义子类使得用户可以根据现有的类快速建立起一个新类,而不必从零开始编写代码,是减少代码的途径之一。;⑶ 继承(Inheritance) 从现有的类建立新类的过程称为继承,继承是面向对象语言提供的一种重要机制。由于继承性,使派生类(或子类)具有父类的全部功能和扩展新类的能力,类之间的层次结构就是靠继承关系维系的。继承性还可以使在一个类上进行的改变反映到它所有的子类中,这种自动更新不单节省了系统开发的时间和精力,同时也减少了维护代码的难度,从而提高了代码的易维护性。 ;8.2 Visual FoxPro中的基类 ;8.2 Visual FoxPro中的基类 ;8.2.1 Visual FoxPro基类 ;8.2.2 Visual FoxPro中类的层次 ;8.2.3 容器与控件 ;8.2.4 对象的引用 ;8.2.4 对象的引用 (续1);⒉ 相对引用 通过对象与容器之间的相对关系引用对象称为相对引用。相对引用以当前对象所处的位置为基点,与对象所处的层次相关。相对引用通常使用几个特殊的属性和关键字,它们的含义如下表所示: ;例. 以上图为例,说明对象的相对引用。 ⑴ Command1是当前对象,引用Command1的Caption属性: This.Caption 这里,This代表当前对象Command1。 ⑵ PageFrame1是当前对象,引用Command1的Caption属性可以 有两种不同的书写格式: ThisForm.Command1.Caption或 This.Parent.Command1.Caption 这里,This代表当前对象PageFrame1,This.Parent ThisForm都代表表单对象Form1。;8

文档评论(0)

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

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

1亿VIP精品文档

相关文档