- 2
- 0
- 约1.38万字
- 约 43页
- 2016-12-03 发布于河南
- 举报
第六章 面向对程序设计
第6章 面向对象程序设计 教学目的 ? 掌握面向对象的程序设计(Object-Oriented Programming,OOP)的基本概念 ? 了解Delphi的面向对象的程序设计方法 ? 掌握Delphi中类和对象的使用方法 本章介绍了面向对象的程序设计基本知识,主要包括类的定义、特性及其属性,对象的定义、特性、创建及撤销。针对Delphi面向对象的特点,重点介绍了OOP中的对象、方法、事件的概念。通过本章的学习,使大家对Delphi这种基于面向对象的开发环境有进一步的认识。 6.1 面向对象的基本概念 6.1.1 什么是类 (1) 类的定义 在Delphi语言中,用保留字Class 来声明类,语法格式为: type 类名称 = class (父类名) 类成员列表 end; 其中,类名称可以为任何合法的标识符,父类名是可选的,而类成员列表用来声明成员,它们是类的域(field)、方法(method)和属性(property)。如果省略了父类名,则新声明的类直接继承预定义类Tobject;如果具备父类名而成员列表为空,则可以省略end。方法是以函数或过程首部的形式出现在类的声明中,而方法的实现部分在程序的其他位置, (2)类的特性 ① 类的封装性 类的封装是指利用抽象数据类型将数据和基于数据的操作封装到一起,数据被保护在抽象数据类型内部,系统的其他部分只有通过包裹在数据外面的被授权的操作,才能与这个抽象数据进行交流和交互。类的所有成员都有一个标明“能见度”的属性,它们是由保留字private、protected、public、published 和automated来说明的。通过这些保留字,可以控制对类中成员的访问权限。每个保留字的具体含义如下: private:具有private属性的成员称为私有成员,不能被类所在单元以外的程序访问。也就是说,一个私有的属性不可以在所在模块之外的其它模块中读写,一个私有的方法也不可以在所在模块之外的其它模块中被调用。 6.1.2 什么是对象 (1)对象的概念 一个对象是一个数据类型。对象就象记录一样,是一种数据结构。按最简单的理解,我们可以将对象理解成一个记录。 对象的特征 : ① 对象的封装性 对对象最基本的理解是把数据和代码组合在同一个结构中,这就是对象的封装特性。 ② 对象的继承性 继承性是指把一个新的对象定义成为已存在对象的后代;新对象继承了父类的一切东西。 ③ 对象的多态性 多态性是在对象体系中把设想和实现分开的手段。如果说继承性是系统的布局手段,多态性就是其功能实现的方法。多态性意味着某种概括的动作可以由特定的方式来实现,这取决于执行该动作的对象。 6.2 OOP程序设计方法 6.2.1方法的类型 在面向对象的程序设计技术中,根据访问方式的不同,将类的方法分为4种:静态方法、动态方法、虚拟方法和消息方法,它们分别由方法名后的static,,virtual,message保留字指定,不加方法指示字声明的方法默认是静态的(static)。如下面的例子所示: type TMember=class Procedure SetStatic; //静态方法 Procedure SetDynamic; dynamic; //动态方法 Procedure SetVirtual; virtual; //虚拟方法 Procedure SetMessage(var M:TMessage);message WM_SomeMessage; //消息方法 end; 6.2.3 OOP程序实例 在Delphi中,常见的组件例如Lable、Button等都是类,对于一个初学者而言,如何能够使用好这些类以及相应的对象,这是我们学习的重点。 【例6.3】获取当前对象的导出类。 分析:本实例要说明一个Delphi组件的祖先类的层次关系。所以需先定义一个函数GetsForm,用于获得当前对象或组件的导出类,并在该函数中通过Sender参数的ClassType属性获得当前类的祖先类。 本章小结 本章主要介绍了面向对象的基本概念,基本特点,针对Delphi的面向对象程序设计的特点,重点介绍了OOP中的类、对象的定义、性质及相关概念,详细分析了Delphi的OOP程序设计方法。 类的定义: type 类名称 = class (父类名) 类成员列表 end; 类有封装性、继承性和多态性3
您可能关注的文档
- 第5章 面向对编程基础.ppt
- struts总.ppt
- 《java语言序设计》第4章.ppt
- 第四章 面向对高级编程.ppt
- 第3章 Serlet编程-1.ppt
- 4-Validtor验证框架.ppt
- 任务19学生基信息管理程序设计.ppt
- 第01章 J2E基础.ppt
- 高中英语必修四nit1 Learning about language.ppt
- 02-类图-对图-包图.ppt
- (2026春新版)部编版八年级语文下册《第一单元》PPT课件.pptx
- 2018电力监控系统网络安全监测装置技术规范.docx
- 2022电力监控系统安全防护方案审核要点.docx
- 2014电力电缆光伏系统EN 50618欧标.docx
- (2026春新版)人教版二年级数学下册《第三单元 万以内数的认识》教案.docx
- (2026春新版)人教版二年级数学下册《第四单元 万以内的加法和减法》教案.docx
- (2026春新版)人教版二年级数学下册《综合与实践 时间在哪里》教案.docx
- (2026春新版)苏教版二年级数学下册《综合与实践 时间有多长》教案 .pdf
- (2026春新版)部编版三年级语文下册第3单元(教案).docx
- (2026春新版)部编版三年级语文下册第8单元(教案).docx
最近下载
- 2026春节节后复工安全培训课件.pptx VIP
- 2025年内蒙古计算机基础(专升本)考试真题及参考答案.docx VIP
- 20210528-国信证券-磷化工行业分析框架.pdf VIP
- 三年级数学下册口算题(每日一练,共36套).pdf VIP
- 热力引擎-游戏行业:2024年微信小游戏买量获客报告 -.pdf VIP
- GB 50217-2018 电力工程电缆设计标准.docx VIP
- 精品解析:辽宁省沈阳市于洪区2025-2026学年八年级上学期1月期末数学试题(原卷版).docx VIP
- 2024小游戏混合变现白皮书.pdf VIP
- 2026年精选采购年工作计划3篇(采购部工作计划).docx VIP
- 2026年医药冷链物流行业报告.docx
原创力文档

文档评论(0)