1 / 87
文档名称:

C++课件第8章继承与派生.ppt

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

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

分享

预览

C++课件第8章继承与派生.ppt

上传人:ouyangxiahe 2019/5/22 文件大小:406 KB

下载得到文件列表

C++课件第8章继承与派生.ppt

文档介绍

文档介绍:------++程序用不同的类定义来表示一组数据以及对这些数据的操作与处理,而类之间往往具有某种关系,“继承与派生”就是类间的一种常用关系。 例如,交通工具→汽车→轿车→红旗轿车。 具有层次关系!汽车 是一种特殊的交通工具轿车 是一种特殊的汽车红旗轿车是一种特殊的轿车2只要定义清楚了“交通工具”,那么在定义“汽车”时(注意,它就是交通工具),只需再说明它的特殊性(而不必重新从头定义!)。同理,只要定义清楚了“轿车”,那么在定义“红旗轿车”时(注意,它就是轿车),只需再说明它的特殊性(根本不必重新从头定义!)。 又例如,公司四种雇员档案的管理: employee(雇员):姓名、年龄、工资; manager(经理):姓名、年龄、工资、行政级别; engineer(工程师):姓名、年龄、工资、专业、学位; director(高级主管):姓名、年龄、工资、专业、学位、职务。3C++提供了类定义的派生和继承功能,能很好地解决上述问题(使代码可重用,避免重复!)。 若类A是类B的基类(父类),则类B是类A的派生类(子类)。也可以说,类B(子类)继承了类A(父类);或说,类A(父类)派生出类B(子类)。 --参看书p193-197, class<派生类类型名>:<基类表>{ private: <各私有成员说明>; public: <各公有成员说明>; protected: <各保护成员说明>; <以关键字friend开头的友元说明>;};5<基类表>的一般格式为: <派生方式><基类名1>,...,<派生方式><基类名n>而<派生方式>又可为private、public或protected。6派生方式(基类 在基类中的在派生类中的被继承方式)存取权限 的存取权限================================================== public public public public potected protected public private (essible) potected public potected potected potected protected potected private (essible) private public private private potected private private private (essible)==================================================7注意: public派生方式:使基类的公有成员和保护成员在派生类中仍然是公有成员和保护成员,而基类的私有成员不可在派生类中被存取。 protected派生方式:使基类的公有成员和保护成员在派生类中都变为保护成员,而基类的私有成员不可在派生类中被存取。 private派生方式:使基类的公有成员和保护成员在派生类中都变为私有成员,而基类的私有成员不可在派生类中被存取。8派生类中可出现四种成员:1)不可访问的成员--基类的private私有成员被继承过来后,这些成员在派生类中是不可访问的。2)私有成员--包括在派生类中新增加的private私有成员以及从基类私有继承过来的某些成员。这些成员在派生类中是可以访问的。3)保护成员--包括在派生类中新增加的potected保护成员以及从基类继承过来的某些成员。这些成员在派生类中是可以访问的。 4)公有成员--包括在派生类中新增加的public公有成员以及从基类公有继承过来的基类的public成员。这些成员不仅在派生类中可以访问,而且在建立派生类对象的模块中,也可以通过对象来访问它们。9分析下述程序中的继承与派生关系,并上机进行测试验证,以加深对它们进行正确使用的理解。classbaseCla{ intprivData;protected: intprotData;public: intpublData;};10