Delphi 程序设计-课件 第六章 面向对象程序设计

Delphi 程序设计-课件 第六章 面向对象程序设计

ID:40238669

大小:566.00 KB

页数:44页

时间:2019-07-28

Delphi 程序设计-课件 第六章 面向对象程序设计_第1页
Delphi 程序设计-课件 第六章 面向对象程序设计_第2页
Delphi 程序设计-课件 第六章 面向对象程序设计_第3页
Delphi 程序设计-课件 第六章 面向对象程序设计_第4页
Delphi 程序设计-课件 第六章 面向对象程序设计_第5页
资源描述:

《Delphi 程序设计-课件 第六章 面向对象程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章面向对象程序设计教学目的掌握面向对象的程序设计(Object-OrientedProgramming,OOP)的基本概念了解Delphi的面向对象的程序设计方法掌握Delphi中类和对象的使用方法本章介绍了面向对象的程序设计基本知识,主要包括类的定义、特性及其属性,对象的定义、特性、创建及撤销。针对Delphi面向对象的特点,重点介绍了OOP中的对象、方法、事件的概念。通过本章的学习,使大家对Delphi这种基于面向对象的开发环境有进一步的认识。6.1面向对象的基本概念6.1.1什么是类(1)类的定义在Delphi语言中,用保留字

2、Class来声明类,语法格式为:type类名称=class(父类名)类成员列表end;其中,类名称可以为任何合法的标识符,父类名是可选的,而类成员列表用来声明成员,它们是类的域(field)、方法(method)和属性(property)。如果省略了父类名,则新声明的类直接继承预定义类Tobject;如果具备父类名而成员列表为空,则可以省略end。方法是以函数或过程首部的形式出现在类的声明中,而方法的实现部分在程序的其他位置,typeTStudent=class(TPeople)IDinschool,grade:String;entrance

3、mark:Single;proceduresetvalue(i,g:string;m:Single);functionispassed:boolean;end;定义了一个TStudent类,其父类为TPeople,它包括IDinschool(学号),grade(年级),entrancemark(入学成绩)3个域和setvalue,ispassed2个方法。类的方法是在类中声明的函数和过程,如上例中的setvalue过程和ispassed函数,下面是两个方法的实现代码:procedureTstudent.setvalue(i,g:string;

4、m:Single);//为学生的各域设置值beginIDinschool:=i;grade:=g;entrancemark:=m;end;functionTstudent.ispassed:boolean;//判断是否通过入学考试beginifentrancemark>=450thenispassed:=trueelseispassed:=false;end;(2)类的特性①类的封装性类的封装是指利用抽象数据类型将数据和基于数据的操作封装到一起,数据被保护在抽象数据类型内部,系统的其他部分只有通过包裹在数据外面的被授权的操作,才能与这个抽象数

5、据进行交流和交互。类的所有成员都有一个标明“能见度”的属性,它们是由保留字private、protected、public、published和automated来说明的。通过这些保留字,可以控制对类中成员的访问权限。每个保留字的具体含义如下:private:具有private属性的成员称为私有成员,不能被类所在单元以外的程序访问。也就是说,一个私有的属性不可以在所在模块之外的其它模块中读写,一个私有的方法也不可以在所在模块之外的其它模块中被调用。protected:具有protected属性的成员称为保护成员,可以被该类和该类的派生类所访问

6、。public:具有public属性的成员称为保护成员,可以被该类以外的类访问。如果两个类不在同一个单元文件中,则要在uses语句中包括被访问的类所在的单元名称。published:具有published属性的成员称为发行类型成员,published型成员和public型成员具有相同的可见性,区别在于published型成员在运行期间和设计期间均可以使用,而public型成员只有在运行期间可以使用。通常发行类型的成员用在组件类的声明中,这样,就可以在对象编辑器中访问组件的发行类型的成员。automated:具有automated属性的成员称为

7、自动类型成员,它的访问权限基本与public相同。这种类型的成员一般用在从TAutoObject类派生的类中,目前只是为了和以前版本的Delphi兼容才保留了automated属性。②类的继承性继承性也是面向对象编程技术的一个共同特点,它是在已存在的类的基础上去建立新的类,使新建立的类成为原有类的子类(派生类),原有类即为新类的父类(基类)。子类继承父类所有的域和方法,且继承具有传递性。例如:typeTpeople=classprivatename,sex:string;age:0..100;publicfunctiongetname:str

8、ing;end;先定义了一个Tpeople父类,其子类定义如下。typeTStudent=class(tpeople)privateIDinschool,grade

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。