1 / 7
文档名称:

第10章 多态.ppt

格式:ppt   页数:7页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第10章 多态.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

第10章 多态.ppt

文档介绍

文档介绍:第10章多态
虚成员
类中用关键字virtual修饰的成员称为虚成员,虚成员有虚方法、虚属性和虚索引器。
在类的继承中,派生类获得了基类中的除了构造函数和析构函数以外的所有成员,派生类不能删除这些成员。对于数据成员,派生类可以隐藏基类的同名成员或者直接访问非private成员;对于行为成员,例如方法、属性、索引器等,也一样可以隐藏基类的同名成员或者直接调用非private成员。
虚成员和抽象成员是完全不一样的,抽象成员,例如抽象方法,是不完整的,不能执行的;而虚成员,例如虚方法,是完整的方法,是可以执行的。仅仅就虚成员所在的类而言,有没有virtual修饰词不影响其功能。
多态的基础
多态的基础
重写又称为覆盖。对于基类的virtual成员,在派生类中重新加以定义称为重写或者覆盖。虚成员和虚成员的重写提供了一个能产生多态的功能。重写需要使用关键字override,重写和隐藏有相似的方面,但有有实质的区别。
如果重写基类的virtual成员,派生类的同名成员没有用override,就等价于使用了缺省的new关键字,这样就产生了一个新的成员,并且隐藏了而不是重写了基类的同名的虚成员,这样的程序仍然能够编译和运行,但编译时系统会提出警告。
重写(覆盖)
多态对象
用基类类名声明但是用派生类构造函数创建,这类对象的主要用途是引发多态,为了将它们和一般的对象(声明和创建都使用同一个类型名的对象)加以区别、揭示它们的特点和用途,本书将这种形态的对象称为多态对象。
隐藏和重写的比较
隐藏和重写是基类和派生类的同名成员的两种不同关系,隐藏可以发生在数据成员和行为成员上,而重写只是对行为成员而言的;一组同名成员只能体现出一种关系,所以在一般情况下是不会产生混淆的。但是,在存在虚成员、重写和多态对象的情况下,分清隐藏和重写两种调用同名方法时机制的差别是有必要的。
上溯
把派生类的对象当作基类的对象来处理,称为上溯。检查上溯是否成立的过程是从基类出发检查派生类中是否重写了基类的同名虚方法,一直到创建多态对象的派生类类型。
编译时的多态和运行时的多态
如果在编译时就能确定调用什么对象中的成员,称为编译时的多态,也称为早期绑定,只有当运行时才能确定调用哪个对象中的成员的情形,称为运行时多态,又称为晚期绑定。
隐藏、重载都属于早期绑定,即编译时的多态;虚方法、重写和多态对象能引发的是晚期绑定

最近更新

消防设施设备检测与维护服务协议 3页

消防验收与市政基础设施合同范本 3页

温室大棚温室设施产品销售与售后服务合同 3页

演出活动安全培训及演练服务合同 3页

烟花爆竹企业安全生产责任书模板 3页

燕窝绿色环保养殖基地建设合同 3页

物业保洁服务合同社区消防安全宣传协议 3页

物业委托代理与社区文化活动组织收费标准合同.. 3页

物业服务质量提升与人才培养合同书 3页

物业管理服务合同模板大全 2页

物流仓储中心全面保洁与货物管理承包协议 3页

物流公司物流园区物业管理合作协议 3页

物流行业销售经理职务合同书 3页

物流配送居间服务合作协议-@-1 2页

特种车辆销售合作合同样本 3页

玩具企业跨境电商物流服务合同 3页

环保型桥架产品定制采购合同 3页

环保行业政策研究与解读合同书[1] 3页

工伤保险合同补充协议2025年度范本3篇 127页

现代物业经营管理全权委托合同模板 4页

安全员劳务合同(2025年度)企业安全文化建设.. 45页

婚介合同律师专业代理2025年度爱情见证合同3篇.. 37页

二零二五年度高等教育机构与企业联合培养人才.. 41页

电力设施安全协议书 3页

二零二五年度食品行业宣传册印制与食品安全宣.. 39页

电子化托盘共享平台合作协议书 4页

2025实用假期务农心得体会(14篇)word模板范.. 19页

畜禽养殖场土地流转合同模板 3页

知识产权投资担保合作协议范本 3页

矿山开采土方运输与回填服务合同范本 3页