第06讲 面向对象的核心特性.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《 Delphi 程序设计》 第1章 Delphi 2005简介 第2章 Object Pascal语言基础 第3章 Windows应用程序界面设计 第4章 菜单、工具栏和对话框 第5章 使用复杂组件 第6章 面向对象的核心特性 第7章 多文档界面设计 第8章 程序调试与异常处理 第9章 文件操作和流 第10章 多媒体应用设计 第11章 数据库应用设计 第12章 综合应用设计 第6章 面向对象的核心特性 6.1 软件的可重用性 6.2 深入理解对象 6.3 类的封装性 6.4 类的继承性 6.5 类的多态性 6.6 可视化继承 6.1 软件的可重用性 两种可重用方式 用重用进行软件开发 为重用而进行软件开发 Delphi的软件重用机制 6.2 深入理解对象 6.2.1 对象引用模型 6.2.2 动态地创建组件 6.2.1 对象引用模型 变量的赋值方式 2. 对象的引用赋值方式 【例6.1】 理解对象引用模型。 6.2.2 动态地创建组件 【例6.2】 动态地创建按钮对象。 6.3 类的封装性 6.3.1 什么是封装 6.3.2 自定义类 6.3.3 如何封装 6.3.4 属性 6.3.1 什么是封装 封装性是面向对象的核心特征之一,它提供一种信息隐藏技术。 类的封装性包含两层含义:一是将数据和对数据的操作组合起来构成类,类是一个不可分割的独立单位;二是类中既要提供与外部联系的方法,同时又要尽可能地隐藏类的实现细节。 6.3.2 自定义类 创建新单元 引用已存在的单元 【例6.3】 自定义日期类。 应用程序界面设计 新建单元保存自定义日期类 应用程序中声明引用单元 引用单元中的类 TDate1类设计中存在的问题 6.3.3 如何封装 构造方法与析构方法 类方法 方法的重载 类中成员的可见性 private(私有的) protected(保护的) public(公有的) 【例6.4】 类的封装。 封装后的TDate2类声明 调用TDate2类的方法 类的封装性体现 6.3.4 属性 属性的声明 property 属性:类型 read 读方法 write 写方法; 属性的read与write property Year:word read GetYear write SetYear; property Text:string read GetText; 属性的引用 对象.属性 【例6.5】 定义属性。 含有属性定义的TDate3类声明 使用属性 类封装的优越性 设计属性的优越性 日期类的设计与属性问题讨论 【例6.6】 完善自定义的日期类。 实现类中对象方法和构造方法的重载。 完善日期类的定义 应用程序设计 6.4 类的继承性 6.4.1 什么是继承 6.4.2 定义继承的类 6.4.3 TObject类 6.4.1 什么是继承 继承的概念 继承的作用 6.4.2 定义继承的类 声明继承类 type 类 = class(父类) 数据域声明; 方法说明首部; end; 继承原则 类的赋值相容性:子类对象即是父类对象 【例6.7】 定义继承的类。 父类TPerson定义 子类TStudent定义 创建TPerson类及其子类TStudent对象 程序设计说明 程序设计中存在问题 6.4.3 TObject类 TObject类定义的主要方法 constructor Create; //构造方法 function ClassType: TClass; //返回对象所属的类 class function ClassName: ShortString; //获得类名 class function ClassNameIs(const Name: string): Boolean; class function ClassParent: TClass; //获得该类的父类 procedure Free; //释放对象 6.5 类的多态性 6.5.1 什么是多态 6.5.2 子类方法覆盖父类同名方法 6.5.3 运行时多态性 6.5.1 什么是多态 方法的重载 重载(overload)是指同一个类中的多个方法可以同名但参数个数或参数类型必须不同。 方法的覆盖 覆盖(override)是指子类重定义了父类中的同名方法。 6.5.2 子类方法覆盖父类同名方法 子类继承父类方法 子类方法覆盖父类同名方法 inherited 父类同名方法(参数列表) 【例6.8】 子类方法覆盖父类同名方法。 子类重定义父类的同名方法和属性 使用子类对象 6.5.3 运行时多态性 编译时

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档