第2章Delphi面向对象的编程方法(四).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文档。上传文档
查看更多
第2章Delphi面向对象的编程方法(四)

2.1.10.7 将库单元加入工程  ??????? 将库单元加入工程是比较简单的。无论是您自己建立的库单元还是Delphi建立的与窗体有关的库单元,如果已经完成,则先打开您想加入库单元的工程(可以用Open Project打开工程);再选用File|Open File,然后选择您想加入的源程序(.PAS文件),并选择OK即可。则库单元被加入到应用程序中。  2.2 用Delphi的对象进行编程  ??????? Delphi是基于面向对象编程的先进开发环境。面向对象的程序设计(OOP)是结构化语言的自然延伸。OOP的先进编程方法,会产生一个清晰而又容易扩展及维护的程序。一旦您为您的程序建立了一个对象,您和其他的程序员可以在其他的程序中使用这个对象,完全不必重新编制繁复的代码。对象的重复使用可以大大地节省开发时间,切实地提高您和其他人的工作效率。  2.2.1 什么是对象  ??????? 一个对象是一个数据类型。对象就象记录一样,是一种数据结构。按最简单的理解,我们可以将对象理解成一个记录。但实际上,对象是一种定义不确切的术语,它常用来定义抽象的事务,是构成应用程序的项目,其内涵远比记录要丰富。在本书中,对象可被理解为可视化部件如按钮、标签、表等。 ??????? 了解对象,最关键的是掌握对象的特性。一个对象,其最突出的特征有三个:封装性、继承性、多态性。  2.2.1.1 对象的封装性  ??????? 对对象最基本的理解是把数据和代码组合在同一个结构中,这就是对象的封装特性。将对象的数据域封闭在对象的内部,使得外部程序必需而且只能使用正确的方法才能对要读写的数据域进行访问。封装性意味着数据和代码一起出现在同一结构中,如果需要的话,可以在数据周围砌上“围墙”,只有用对象类的方法才能在“围墙”上打开缺口。  2.2.1.2 对象的继承性  ??????? 继承性的含义直接而且显然。它是指把一个新的对象定义成为已存在对象的后代;新对象继承了旧类的一切东西。在往新对象中添加任何新内容以前,父类的每一个字段和方法都已存在于子类中,父类是创建子类的基石。  2.2.1.3 对象的多态性  ??????? 多态性是在对象体系中把设想和实现分开的手段。如果说继承性是系统的布局手段,多态性就是其功能实现的方法。多态性意味着某种概括的动作可以由特定的方式来实现,这取决于执行该动作的对象。多态性允许以类似的方式处理类体系中类似的对象。根据特定的任务,一个应用程序被分解成许多对象,多态性把高级设计处理的设想如新对象的创建、对象在屏幕上的重显、程序运行的其它抽象描述等,留给知道该如何完美的处理它们的对象去实现。  2.2.1.4 通过Delphi实例了解对象  ????? 让我们结合Delphi的实例讨论对象的概念: ????? 当您要建立一个新工程时,Delphi 将显示一个窗体作为设计的基础。在程序编辑器中,Delphi将这个窗体说明为一个新的对象类型,并同时在与窗体相关联的库单元中生成了创建这个新窗体对象的程序代码。  unit Unit1;  interface  uses SysUtils, Windows, Messages, Classes, Graphics, Controls, Forms, Dialogs;  type TForm1 = class(TForm) {窗体的类型说明开始} private { Private declarations } public { Public declarations } end; {窗体的类型说明结束}  var Form1: TForm1; {说明一个窗体变量}  implementation  {$R *.DFM}   end.  ??????? 新的窗体类型是TForm1,它是从TForm继承下来的一个对象。它具有对象的特征:含有域或方法。由于您未给窗体加入任何部件,所以它只有从TForm类中继承的域和方法,在窗体对象的类型说明中,您是看不到任何域、方法的说明的。Form1称为TForm1类型的实例(instance)。您可以说明多个对象类型的实例,例如在多文档界面(MDI)中管理多个子窗口时就要进行这样的说明。每一个实例都有自己的说明,但所有的实例却共用相同的代码。 ???????? 假设您向窗体中加入了一个按钮部件,并对这个按钮建立了一个OnClick事件处理过程。再查看Unit1的源程序,会发现TForm1的类型说明部分如下: type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } publi

文档评论(0)

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

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

1亿VIP精品文档

相关文档